摘要: http://www.cnblogs.com/freeliver54/archive/2011/08/04/2127773.html任何程序的开发都离不开单元测试来保证其健壮和稳定。Android的程序自然也不例外。从Android SDK 0.9开始,就有了比较成熟的测试框架,但是直到目前最新的1.1版本,也没有详细的文档介绍这个内容,只是简单的给了一个Api Demos里的几个单元测试代码。因此,我在这里对此内容做一下梳理和总结:JUnit还能用么?在 Java下做单元测试必然用到JUnit。这里说的JUnit是指从Apache基金会下载的junit.jar里提供的一系列单元测试功能。这些 阅读全文
posted @ 2013-06-09 14:22 zghbhdxw 阅读(455) 评论(0) 推荐(0) 编辑
摘要: quote from:http://www.cnblogs.com/qianxudetianxia/archive/2012/07/04/2573687.html 随着工程越来越复杂,项目越来越多,以及平台的迁移(我最近就迁了2回),还有各大市场的发布,自动化编译android项目的需求越来越强烈,后面如果考虑做持续集成的话,会更加强烈。 经过不断的尝试,在ubuntu环境下,以花界为例,我将一步一步演示如何使用命令行,使用ant编译android项目,打包多渠道APK。 要点: (1). 编译android的命令使用 (2). ant基本应用 (3). 多项目如何编译(包含and... 阅读全文
posted @ 2013-06-09 14:20 zghbhdxw 阅读(200) 评论(0) 推荐(0) 编辑
摘要: quote from:http://www.cnblogs.com/qianxudetianxia/archive/2012/06/14/2549891.html Android的ListView是应用最广的一个组件,功能强大,扩展性灵活(不局限于ListView本身一个类),前面的文章有介绍分组,拖拽,3D立体,游标,圆角,而今天我们要介绍的是另外一个扩展ListView:下拉刷新的ListView。 下拉刷新界面最初流行于iphone应用界面,如图: 然后在Android中也逐渐被应用,比如微博,资讯类。 所以,今天要实现的结果应该也是类似的,先贴出最终完成效果,如下图,接下来我们... 阅读全文
posted @ 2013-06-09 14:18 zghbhdxw 阅读(518) 评论(0) 推荐(0) 编辑
摘要: 建造者模式把构造和表示分离开,根据客户需求生产一个相应的对象。本来呢,我们根据Builder接口实现不同的具体的ConcreteBuilder,就可生产不同的对象了。但是,下面例子的只有一个Builder,所以也没有接口Builder,也没有其他的ConcreteBuilder。但是我今天要讲的例子太简单,简单到都不觉得是建造者模式,但是又有建造者模式的感觉。1. 意图将一个复杂对象的构建和它的表示分离,使得同样的创建过程可以创建不同的表示。2.结构图和代码android中大量的使用对话框组件,它的调用方法就是构建,拼接,表示。Builder通过setTitle(),setMessage(), 阅读全文
posted @ 2013-06-09 14:15 zghbhdxw 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 1 public abstract class Animation implements Cloneable { 2 Interpolator mInterpolator; 3 // 通过set方法注入 4 public void setInterpolator(Interpolator i) { 5 mInterpolator = i; 6 } 7 8 public boolean getTransformation(long currentTime, Transformation outTransfor... 阅读全文
posted @ 2013-06-09 14:13 zghbhdxw 阅读(178) 评论(0) 推荐(0) 编辑
摘要: quote from:http://www.cnblogs.com/qianxudetianxia/archive/2011/08/28/2155872.html本文算是一篇漫谈,谈一谈当前几个流行应用的主界面布局,找个经典的布局我们自己也来实现一个。不是为了追求到底有多难,而是为了明白我们确实需要这么做。走个题,android的UI差异化市场依然很大,依然值得去挖掘。铸就经典,是为了超越经典!下面我们以下面10个应用来分析比较它们的主界面:1.QQ20112.新浪微博3.凤凰周刊4.小米读书5.微信6.太平洋电脑网7.360卫士8.Camera3609.大众点评网10.挖财1.QQ2011Q 阅读全文
posted @ 2013-06-09 14:06 zghbhdxw 阅读(204) 评论(0) 推荐(0) 编辑
摘要: CV一族,应该很容易理解原型模式的原理,复制,粘贴完后看具体情况是否修改,其实这就是原型模式。从java的角度看,一般使用原型模式有个明显的特点,就是实现cloneable的clone()方法。原型模式,能快速克隆出一个与已经存在对象类似的另外一个我们想要的新对象。1.意图用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。热门词汇:克隆 深拷贝 浅拷贝2.结构图和代码它的结构图非常简单,我们以Intent为例子:Intent的clone方法非常简单:1 @Override2 public Object clone() { 3 return new Intent(this)... 阅读全文
posted @ 2013-06-09 14:02 zghbhdxw 阅读(179) 评论(0) 推荐(0) 编辑
摘要: quote frome:http://www.cnblogs.com/qianxudetianxia/archive/2012/02/27/2010965.html对于android开发者来说起,适配器模式简直太熟悉不过,有很多应用可以说是天天在直接或者间接的用到适配器模式,比如ListView。ListView用于显示列表数据,但是作为列表数据集合有很多形式,有Array,有Cursor,我们需要对应的适配器作为桥梁,处理相应的数据(并能形成ListView所需要的视图)。正是因为定义了这些适配器接口和适配器类,才能使我们的数据简单灵活而又正确的显示到了adapterview的实现类上。适配 阅读全文
posted @ 2013-06-09 13:55 zghbhdxw 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 工厂方法模式,往往是设计模式初学者入门的模式,的确,有人称之为最为典型最具启发效果的模式。android中用到了太多的工厂类,其中有用工厂方法模式的,当然也有很多工厂并不是使用工厂方法模式的,只是工具管理类。今天以ThreadFactory举例说明一下简单工厂模式和工厂方法模式。工厂方法模式,Factory Method,简单的方式,不简单的应用。1.意图定义一个用于创建对象的接口,让子类决定实例化哪个类。工厂方式模式使一个类的实例化延迟到其子类。热门词汇:虚构造器 延迟 创建对象 子类2.结构图和代码我们先看看标准的工厂方法结构图:先抽象的产品类,抽象的工厂类,然后用客户端具体的工厂生产相应 阅读全文
posted @ 2013-06-09 13:48 zghbhdxw 阅读(145) 评论(0) 推荐(0) 编辑
摘要: quote from:http://www.cnblogs.com/qianxudetianxia/archive/2011/08/13/2135478.html命令模式,在.net,java平台的事件机制用的非常多,几乎每天都与之打交道。android中对我印象最深的就是多线程多进程的环境,所以必然大量使用到Runbable,Thread,其实用的就是最简单的命令模式。命令模式,Command Pattern,把请求封装为一个对象,多么巧妙的一个说法啊。1.意图将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作。热门词汇:动作 事 阅读全文
posted @ 2013-06-09 13:38 zghbhdxw 阅读(237) 评论(0) 推荐(0) 编辑
摘要: quote from:http://www.cnblogs.com/qianxudetianxia/archive/2011/08/10/2133659.html享元模式,给我的感觉就是对象池,缓存单例对象。java中的享元模式最经典的例子就是String类了,还有一个最容易理解的就是word文档字符共享的例子,也是享元模式的经典应用。本文对android中的sql编译类SQLiteCompiledSql说明,展开分析,也是很容易理解的一个例子,其实,android SDK中必然有很多地方需要用到享元模式。享元模式,Flyweight Pattern,说的严重点,一些程序如果不使用享元模式的话 阅读全文
posted @ 2013-06-09 13:34 zghbhdxw 阅读(399) 评论(0) 推荐(0) 编辑
摘要: 备忘录模式,在工作代码中,要么不用,要么经常用到。举个例子,程序员喜欢写代码,coding,coding,这个时候它的状态是很high,但是每隔一段时间总要去上一下厕所,状态是放松relax,上完测试归来后又恢复到high的状态,继续coding。这个过程对于身后的老板来说,它默认同意你离开去上厕所,他也希望你回来后恢复high的状态继续工作,但是你在这个过程中上厕所的这件事,他是不需要了解细节的,而且做为当事人你也不希望他了解你上厕所的细节吧,你只要回来后恢复激情high着继续工作,老板应该就不会挑你的刺。这就是备忘录模式。本文今天就Canvas的一个save(),restore()操作分析 阅读全文
posted @ 2013-06-09 13:23 zghbhdxw 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 模板方法,和单例模式是我认为GOF的23中最简单的两种模式。但是我个人对模板方法的经典思想特别推崇,虽然模板方法在大对数情况下并不被推荐使用,但是这种通过父类调用子类的方法,使用继承来改变算法的一部分,是面向对象的一种基本认识。打比方说父亲有很多理想,就行医救人吧,但是父亲医术不行,只能靠儿子,儿子长大后遵从父亲大志,春风拂面,妙手回春,实现了父亲的理想,儿子做的事情早在出生前就定下来了,是父亲之前久定好的模板。认识到模板方法的这种思想,父类可以让未知的子类去做它本身可能完成的不好或者根本完成不了的事情,对框架学习大有帮助。本文以View中的draw方法为例,展开分析。模板方法,Templat 阅读全文
posted @ 2013-06-09 13:10 zghbhdxw 阅读(184) 评论(0) 推荐(0) 编辑
摘要: quote frome :http://www.cnblogs.com/qianxudetianxia/archive/2011/08/07/2130306.html单例模式,可以说是GOF的23种设计模式中最简单的一个。这个模式相对于其他几个模式比较独立,它只负责控制自己的实例化数量单一(而不是考虑为用户产生什么样的实例),很有意思,是一个感觉上很干净的模式,本人很喜欢这个模式。android中很多地方都用到了单例模式,本文以输入法管理者InputMethodManager为例,展开分析。单例模式,Singleton Pattern,能够以其特有的优势,替代系统中全局变量,应用非常广泛。1. 阅读全文
posted @ 2013-06-09 12:29 zghbhdxw 阅读(163) 评论(0) 推荐(0) 编辑
摘要: quote from:http://www.cnblogs.com/qianxudetianxia/archive/2011/08/07/2129731.html观察者模式,是一种非常常见的设计模式,在很多系统中随处可见,尤其是涉及到数据状态发生变化需要通知的情况下。本文以AbstractCursor为例子,展开分析。观察者模式,Observer Pattern,是一个很实用的模式,本人曾经接触到的各种平台以及曾经参与项目中打印模板解释器中都用到了此模式。1.意图定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。热门词汇:依赖 发布-订阅 阅读全文
posted @ 2013-06-09 11:46 zghbhdxw 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 游标ListView,提供索引标签,使用户能够快速定位列表项。 也可以叫索引ListView,有的人称也为Tweaked ListView,可能更形象些吧。 一看图啥都懂了:1.游标(Fast scroll thumb) 就是右边的那个拖动的方块,这个非常的简单:?12345<ListViewandroid:id="@+id/tweaked_list"android:layout_width="fill_parent"android:layout_height="wrap_content"android:fastScrollEn 阅读全文
posted @ 2013-06-09 10:27 zghbhdxw 阅读(340) 评论(0) 推荐(0) 编辑
摘要: Android中对组合模式的应用,可谓是泛滥成粥,随处可见,那就是View和ViewGroup类的使用。在android UI设计,几乎所有的widget和布局类都依靠这两个类。组合模式,Composite Pattern,是一个非常巧妙的模式。几乎所有的面向对象系统都应用到了组合模式。1.意图将对象View和ViewGroup组合成树形结构以表示"部分-整体"的层次结构(View可以做为ViewGroup的一部分)。组合模式使得用户对单个对象View和组合对象ViewGroup的使用具有一致性。热点词汇: 部分-整体 容器-内容 树形结构 一致性 叶子 合成 安全性 透明 阅读全文
posted @ 2013-06-09 09:55 zghbhdxw 阅读(336) 评论(0) 推荐(1) 编辑
摘要: =======================2011-08-26==================================有时候,最难的是坚持;有时候缺少的是信念。=======================2011-08-07==================================从接触设计模式到如今大概4年左右的时间,一直都想有朝一日定要精通,坐于床头,侧望左右,设计模式的书买了7,8本了,也看了很多参考和视频,也用到了一些。但是今天我终于停下来,停下来梳理,停下来欣赏,也停下来反省,总之,我今天停下来了,是为了走的更好,走的更远。如果有幸我能够把这个系列写到23 阅读全文
posted @ 2013-06-09 09:32 zghbhdxw 阅读(116) 评论(0) 推荐(0) 编辑