android
文章平均质量分 91
sun_star1chen
这个作者很懒,什么都没留下…
展开
-
android 自写 ViewPager
Pager 作为android中常用的控件,难免遇到不一样的需求,由于android 提供的ViewPager 难于满足项目需求,自定义了一个pager,此文用以记录写该控件的所有过程。一 、明确该控件的作用(为什么要去编写这个控件):1.用户操作可以多样性(单向滑动、双向滑动、水平滑动、垂直滑动 甚至任意方向的滑动)2.可以启动自动轮播3.可以无限循环 (系统提供的 ViewPa原创 2016-03-07 16:48:34 · 783 阅读 · 0 评论 -
一步一步学android控件(之二十七)—— SlidingDrawer
对于SlidingDrawer,官网上是这样解释的:SlidingDrawer将内容隐藏在屏幕之外,并且允许用户通过拖动handle将内容显示到屏幕上。一个SlidingDrawer由两个子View组成:一个“handle”和一个“content”。注意:SlidingDrawer在API17中已经弃用。下面通过一个简单示例来学习该控件,先看看效果图:看代码:1、widget_原创 2013-12-05 09:56:10 · 1401 阅读 · 0 评论 -
一步一步学android控件(之二十六)—— QuickContacBadge
QuickContacBadge译为联系人快捷标识,用于显示一张图片,点击该图后弹出相关的快捷功能,如打电话、发短信等。QuickContacBadge提供了三个方法指定联系人的信息:1、assignContactUri(Uri contactUri) : 联系人Uri2、assignContactFromPhone(String phonNumber,boolean lazyLo原创 2013-12-03 11:27:32 · 3497 阅读 · 0 评论 -
android进程间通信——aidl(Android Interface Definition Language)
在android中,通常情况下一个进程是不允许其它进程访问自己的内存的。而aidl提供了client和service都“同意”的交互接口,用以实现进程间通信。使用aidl通常有三个阶段:由于创建的是两个应用程序,为了方便介绍,这里先给出服务提供者(Service)的工程目录结构图:一、aidl的设计——设计aidl包括三个步骤:1、定义aidl在设计好aidl接口后,就可以原创 2012-10-21 17:06:39 · 1252 阅读 · 0 评论 -
一步一步学android控件(之二十五)—— SeekBar
SeekBar扩展自ProgressBar——在ProgressBar的基础上添加了一个用户可以拖拽的thum。 SeekBar.OnSeekBarChangeListener是接收SeekBar进度改变的监听器。SeekBar的使用方法类似于ProgressBar,今天主要通过自定义SeekBar的样式来学习SeekBar。自定义SeekBar样式有一点与ProgressBar不同——自定义原创 2013-12-02 09:07:43 · 1595 阅读 · 0 评论 -
一步一步学android控件(之二十四)—— RatingBar
RatingBar是SeekBar和ProgressBar的扩展,用星星来评级。使用的默认大小RatingBar时,用户可以触摸/拖动或使用键来设置评分,它有俩种样式(大、小),其中大的只适合指示,不适合于用户交互。注意:用户不应修改Secondary Progress .RatingBar中常用的属性有:android:isIndicator:该RatingBar是否是指示器,如原创 2013-12-01 19:59:01 · 2991 阅读 · 0 评论 -
一步一步学android控件(之三十)—— 结束篇
历时一个多月,算是把android中基本的控件都温习了一遍——TextView、EditText、AutoCompleteTextView、Button、CalendarView、CheckBox、Chronometer、CompoundButton、DatePicker、DigitalClock、ExpandableListView、Gallery、GridView、HorizontalScro原创 2013-12-07 11:23:55 · 1327 阅读 · 0 评论 -
一步一步学android控件(之二十九)—— SearchView
创建Searchable配置文件首先,在res/xml目录下添加配置文件searchable.xml——该配置文件确定了使用searchView还是searchDialog和定义了一些功能的行为,如suggestions、voice search 。注:系统用该文件去初始化SearchInfo对象,但是用户不能在运行时创建该对象。该searchable.xml配置文件必须以为根节点并且原创 2013-12-07 10:41:19 · 4953 阅读 · 0 评论 -
一步一步学android控件(之二十三)—— ProgressBar
android中内置了多种风格的ProgressBar ,通过style属性设置其样式: 默认的样式 圆形稍大一点的ProgressBar , style="?android:attr/progressBarStyleLarge" 水平的ProgressBar , style="?android:attr/progressBarStyleHorizontal"原创 2013-11-30 10:27:15 · 1831 阅读 · 1 评论 -
一步一步学android控件(之一) —— 开始篇
最基础的东西永远是那么的重要, 但同时也是我们最容易忽略的东西,常常是开始时略微涉略一下,后面就火急火燎的去关注更深层次的东西......有木有朋友感觉写了那么长时间的android代码,有时候想写点自己的东西的时候却发现自己好像离不开网络耶,什么都需要先到网络上遨游一番才能解决自己的问题。从今天开始咱们重新温习一下android基础——android控件:TextView、EditText、AutoCompleteTextView、Button、CalendarView、CheckBox、Chrono原创 2013-10-24 22:54:39 · 6110 阅读 · 2 评论 -
一步一步学android控件(之十四) —— NumberPicker
NumberPicker 是用于选择一组预定义好数字的控件。比如时间hour的选择只有0—23有效,则可以通过setMinValue和setMaxValue设定。使用该控件时需注意他的两个listener和一个formatter:一个listener用于监听当前value的变化;一个listener用于监听该控件的scroll状态;formatter用于格式化显示该控件中的value。下面逐一原创 2013-11-14 22:07:35 · 26066 阅读 · 4 评论 -
一步一步学android控件(之二十二)—— GridView
GridView 用于显示二维滚动网格的View。同ListView一样,他的数据项也是从ListAdapter中产生。关于他的使用方法可参见官网的示例GridView 。下面先了解下GridView中常用到的属性:1、android:numColumn : 指定GridView的列数,如果指定为auto_fit , 则可能根据控件的大小自动调整每行显示的列数。2、android:st原创 2013-11-28 17:09:12 · 2075 阅读 · 0 评论 -
一步一步学android控件(之二十一)—— ListView & ExpandableListView
关于ListView的使用可参见一步一步学android控件(之一) —— 开始篇 ,主要学ExpandableListView。ExpandableListView是一个二级列表,每一个组(Group)可以独立的展开子项目。今天做的效果:同一时刻只有一个Group展开子项目;默认没有子项目展开;点击内容时,显示一个Toast(当前点击的Item的名字)。先看效果图:老规矩,先看布原创 2013-11-27 22:07:47 · 1597 阅读 · 0 评论 -
一步一步学android控件(之二十八)—— ViewFlipper
说到ViewFlipper控件呢就想到ImageSwitcher和TextViewSwitcher(具体使用方法参见一步一步学android控件(之十九)—— ImageSwitcher & TextSwitcher),ImageSwitcher用来在两个ImageView之间切换;TextViewSwitcher用来在两个TextView之间切换;而ViewFlipper呢支持多种类型的多个View....原创 2013-12-06 09:16:01 · 1548 阅读 · 0 评论 -
android实现xml解析技术——Sax、Pull、Dom
每种技术工作原理 Dom:Dom解析器用树形结构存储文档结构,会将所有的内容加载到内存中。如果,文档过大会消耗大量的内存。 由于数据全部加载到内存中,检索和修改的速率会更高。 在android中如果文档较小,是可以采用该方法的。 Sax: Sax解析器是基于事件触发的,一旦开始,就不可倒退和停止。原创 2013-09-02 23:30:44 · 1261 阅读 · 0 评论 -
android monkey 命令详解
Monkey 是什么?Monkey 就是SDK中附带的一个工具。 Monkey 测试的目的?:该工具用于进行压力测试。 然后开发人员结合monkey 打印的日志 和系统打印的日志,结局测试中出现的问题。Monkey 测试的特点?Monkey 测试,所有的事件都是随机产生的,不带任何人的主观性。Monkey 命令标准的monkey 命令[adb shell原创 2014-03-29 09:33:56 · 1586 阅读 · 0 评论 -
android 动画之从哪来回哪去 —— 支持网络图片
上图动画是你想要的吗?如果是yes , 那么恭喜你,这篇文章你找对了;如果是no ,或许你可以先收藏,在需要的时候再打开看看....言归正传,由于项目需要——在一个简介页面打开详情页时要对简介页面的图片平滑过渡到详情页,问了度娘,google几乎都是通过在xml中定义动画,显然这个不符合我们的需求。曾也尝试了开源框架,可惜向下兼容有问题........该库的使用简单的超乎你原创 2016-01-29 14:18:16 · 857 阅读 · 0 评论 -
干货,Umeng分享纯图片(避免跳坑)到_微信,朋友圈等
最近碰到项目需要分享纯图片到 QQ ,朋友圈,微信,微博......由于之前集成了Umeng分享,私心想着,这么强大的分享库,必定支持纯图片分享... 怀着这份坚定的信念,终于找到该如何分享纯图片到微信,微博,朋友圈,QQ的方法,以下是经验总结:首先:纯图片的分享,图片必须是本地图片(网络图片显示不出来)...纯图片的分享,图片必须是本地图片(网络图片显示不出来)...纯原创 2016-01-19 17:45:19 · 7329 阅读 · 5 评论 -
图片边缘增加光晕效果
效果展示:原图 效果图:原理: 使用某种颜色替换图像非透明部分,然后与原图合成最终效果。步骤:1. 底色替换 , 得到如下结果:2.与原图合成,得到最终效果处理代码: /** * * @param map image * @param haloWidthPx halo width, unit in pixel原创 2015-10-23 11:45:34 · 6127 阅读 · 0 评论 -
ListView 中 TextView 添加跑马灯效果
经常需要在ListView 的 item 中对TextView 添加跑马灯效果,由于ListView 的特殊性,我们需要对TextView 做一些额外的设置,否则没有效果。1. ListView 设置focusable = true2. TextView 设置focusable =true ; ellipsize = marquee; 下面给了一个简单跑马灯效果的样式:原创 2015-10-21 15:13:50 · 2336 阅读 · 0 评论 -
Android ColorMatrix研究介绍
ColorMatrix是一个 4X5 的矩阵。它用于改变图像的 RGBA值。查看官网Color作用原理对于图像中的任何一个像素点(由 R ,G ,B ,A 组成),对该点应用颜色矩阵变换后,得到新的像素值(R,G,B,A),他们之间存在如下关系: (图一) 其中,为颜色矩阵。 (图二) 为原始图像的像原创 2015-09-14 09:53:52 · 758 阅读 · 0 评论 -
解决ScrollView滑动过程中ScrollTo()方法不起作用的问题
原文本篇文章作为新的类别 “Android经验之谈” 开篇之作,记录实际开发中遇到的比较“奇怪”的问题以及解决方案,不求长篇大论,但求短小精悍,一两句话讲明问题及解决方案,画龙点睛,一语道破天机。有时候,一句提醒,能让人豁然开朗,少走很多弯路。案例:阅读软件中用ScrollView嵌套TextView显示章节内容问题:当滑动Scrol转载 2015-09-02 13:16:29 · 4179 阅读 · 0 评论 -
一步一步学android控件(之三) —— Button
android 控件众多 , 额 , 具体多少个呢? 貌似有那么几十个吧,也没做个统计,嘿嘿!......有木有朋友感觉写了那么长时间的android代码,有时候想写点自己的东西的时候却发现自己好像离不开网络耶,什么都需要先到网络上遨游一番才能解决自己的问题。思前想后,个人觉得还是有必要巩固一下自己学习过的东西——想想以前这些东西,自己都写过一遍了,但是折腾一段时间下来都不知道放哪里去了........好了,废话不多说了,这次准备重新学习一下android的常用控件TextView、EditText原创 2013-10-28 20:45:35 · 2702 阅读 · 0 评论 -
一步一步学android控件(之二) —— TextView
android 控件众多 , 额 , 具体多少个呢? 貌似有那么几十个吧,也没做个统计,嘿嘿!......有木有朋友感觉写了那么长时间的android代码,有时候想写点自己的东西的时候却发现自己好像离不开网络耶,什么都需要先到网络上遨游一番才能解决自己的问题。思前想后,个人觉得还是有必要巩固一下自己学习过的东西——想想以前这些东西,自己都写过一遍了,但是折腾一段时间下来都不知道放哪里去了........好了,废话不多说了,这次准备重新学习一下android的常用控件TextView、EditText原创 2013-10-26 00:27:43 · 3801 阅读 · 0 评论 -
Android 官方文档之Activity和Task
原文地址什么知识,看官方的API是最好的了。但是鉴于很多人英语不好,便转载了这篇文章,翻译的非常好了。搞不懂Activity声明周期,和程序框架设计的,最好看一看。Activity 和 task 的设计摘要Activity 是 Android 应用的主要组成部分。除了自己写Activity之外,你还可以利用intent,轻松地重用其它应用的Activity。转载 2015-05-26 12:08:13 · 1021 阅读 · 0 评论 -
android blur 详解 ---- 配效果图
在android 中,边缘模糊的效果是通过BlurMaskFilter实现的 , 它定义了一个边缘模糊半径和模糊效果 (Blur)。 Blur 有四种模糊效果, inner 、normal 、 outer 、 solid ,下面分别介绍这几种效果 : 1. Blur.Inner : 目标边缘向内,模糊半径为 R , 如果 R > 目标宽度,则超出部分不显示。2.原创 2015-05-24 14:26:11 · 3260 阅读 · 0 评论 -
ubuntu12.04LTS 搭建android 开发环境
安装配置JDK1、下载 jdk-7u45-linux-x64.tar.gz2、解压文件 tar -zxvf jdk-7u45-linux-x64.tar.gz3、将文件夹移动到 usr/lib/jdk7中 sudo mv jdk1.7.0_45 /usr/lib/jdk74、配置Java环境变量编辑文件 ~/.profilesudo vim ~/原创 2014-03-04 20:50:10 · 1176 阅读 · 0 评论 -
深入理解android view 生命周期
作为自定义 view 的基础,如果不了解android view 的生命周期 , 那么你将会在后期的维护中发现这样那样的问题 .......做过一段时间android 开发的同学都知道,一般 onXXX 函数都是系统的回调函数。而这篇 blog 也是基于这个思想(或许有点笨)......首先来看三分 创建view 的 日志信息 (自定义View 配置到xml文件中):and原创 2015-03-25 21:25:38 · 21797 阅读 · 1 评论 -
一步一步学android控件(之十三) —— TimePicker
TimePicker和DatePicker类似——都是用于确保用户选择的时间或日期是有效的。TimePicker是时间选择器,支持24小时制和12(AM/PM)小时制。可以用OnTimeChangedListener监听TimePicker时间变化。先看看效果图: 24小时制TimePicker原创 2013-11-13 20:39:38 · 3057 阅读 · 0 评论 -
一步一步学android控件(之十一) —— Chronometer
今天先纠正一下前面犯的错误—— WidgetsAdapter,该文件在一步一步学android控件(之一) —— 开始篇中创建,里面出了一个很大的bug,现在才发现 。每次都是添加一个View然后点击测试后Ok就行了,结果今天突然发现点击前面的View也进入最后一个View的界面。修正后的WidgetsAdapter.java内容如下package com.xy.zt.selfdefine原创 2013-11-11 19:45:54 · 1744 阅读 · 0 评论 -
android 动画之插值器
首先要了解为什么需要插值器,因为在补间动画中,我们一般只定义关键帧(首帧或尾帧),然后由系统自动生成中间帧,生成中间帧的这个过程可以成为“插值”。插值器的作用是告诉动画某个属性(比如颜色的渐变)如何随时间变化 。下面是几种常见的插值器:android 系统支持AccelerateDecelerateInterpolator 、 AccelerateInterpolator 、 Anti原创 2013-10-17 21:55:37 · 6178 阅读 · 1 评论 -
Android 动画 Tweened Animation 之 RotateAnimation
RotateAnimation(旋转动画)今天通过指定一个动画效果(类似钟摆的动画)来讲解RotateAnimation的用法。ScaleAnimation 、AlphaAnimation、 TranslateAnimation 的用法请参照相关文章。先看一下下面这个坐标系,如果toDegrees 好了,下面就来完成一个类似钟摆的动画。1、在res/anim目录原创 2013-10-14 23:06:47 · 1960 阅读 · 0 评论 -
Android动画 Tweened Animation 之 AlphaAnimation
AlphaAnimation(渐变透明度动画)AlphaAnimation的类继承结构与ScaleAnimation类继承结构类似,这里就不写出来了。AlphaAnimation一般用于制作淡入淡出效果。 AlphaAnimation有两个关键属性 android:fromAlpha (动画起始帧透明度)、android:toAlpha(动画尾帧透明度)。废话不多说,下面通过实例来原创 2013-10-13 21:35:14 · 1723 阅读 · 0 评论 -
Android动画 Tweened Animation 之 ScaleAnimation
今天就直接写ScaleAnimation了,欲了解 tweenAnimation的相关介绍请看这篇文章android 动画 Tweened Animation 之 TranslateAnimationScaleAnimation(缩放动画)ScaleAnimation是控制对象大小的动画类,用于控制View对象的大小 ,继承自Animation,结构如下:ScaleAnimat原创 2013-10-12 23:05:21 · 2282 阅读 · 0 评论 -
android 动画 Tweened Animation 之 TranslateAnimation
android 系统提供了四种Tweened animation (补间动画):TranslateAnimation 、 AlphaAnimation 、 RotateAnimation 、 ScaleAnimation 。 TranslateAnimation: 移动 , 指示位置坐标的变化。 AlphaAnimation: 渐变 ,指示对象明暗(模糊,清晰)。 RotateAn原创 2013-10-11 22:45:54 · 1988 阅读 · 0 评论 -
android动画——Frame by Frame Animation
在写Frame by Frame Animation之前先介绍一下android中支持的动画类型。android有两种机制让用户创建简单的动画——tweened animation 和 frame by frame animation 。 其中tweened animation 实现 view 的诸如 移动 、大小变化、旋转等;frame by frame animation 是加载一系列的图片然后顺序的播放这些图片......原创 2013-10-10 22:41:33 · 1595 阅读 · 0 评论 -
Android获取屏幕高度、状态栏高度、标题栏高度
在android应用中,有时需要计算个View的位置,导致需要计算状态栏高度,标题栏高度等信息。为以后方便,在此做个简单记录。晒代码前先了解一下android屏幕区域的划分,如下图(该图引用自此文http://www.iteye.com/topic/828830 )1、 屏幕区域的获取 activity.getWindowManager().getDefaultDi原创 2013-09-14 23:22:33 · 2327 阅读 · 0 评论 -
android上Bezier曲线绘制
今天重点写贝塞尔二阶、三阶曲线 。 贝塞尔曲线具体原理请参考:http://baike.baidu.com/view/60154.htm?fromId=2228603 废话不说, 以下是二阶曲线,曲线上点的计算公式: 对给定的起始点(startPoint), 控制点(controlPoint) 和 终点(en原创 2013-07-27 01:17:17 · 3736 阅读 · 0 评论 -
android 应用动态切换主题
由于android系统Theme的设置必须放在onCreate之前,导致每次切换主题都必须重启Activity(对应用级的Theme切换必须重启整个应用),这样对用户的体验来说是非常糟糕的。经过研究,得到一个折中的方法,谨在此记录之,让大家少点弯路。同时,也欢迎同仁们提出自己的见解,使之更完美。 好了,废话不说,先来看效果图: “黑色” 主题: ”白色“主题:原创 2013-06-25 23:39:53 · 1421 阅读 · 0 评论 -
Android Mms 源码结构
注:本文转自 开源中国——http://www.oschina.net/question/54100_36978【厦门】 12月22日(周六下午)OSC 源创会 我要报名»从软件的功能角度来讲,Mms分为对话列表,消息列表,短信编辑,彩信编辑,短信显示,彩信显示和配置。从实现的角度来看,它分为GUI展示层,发送/接收,彩信解析,彩信附件,信息数据等,这些分类对应转载 2012-12-12 16:22:06 · 1068 阅读 · 1 评论