android-设计模式的应用
来源:互联网 发布:软件实施顾问岗位职责 编辑:程序博客网 时间:2024/06/05 06:34
设计模式系列之
一:观察者模式
背景:当我们退出android应用时,往往不能关闭所有的activity而系统又没有提供一次性退出所有应用的方法。
此时观察者模式很好的解决了这个问题:
我们在做android项目时往往用到一个baseactivty,这是继承了avtivity的基类,我们把在各个activity用到的方法都整理到这个activity,方便以及加速我们的开发过程。
而在我们初始化的方法中我们可以将继承此类的activity通过一个attach方法:
private Vector<Activity> obsVector=new Vector<Activity>();
private Context context;
public void attach(Activity activity){
obsVector.add(activity);
}
再在baseactivity写一个destroyAllActivity方法结束掉所有activity
public void destroyAllActivity(){
for(obsVector activity:obsVector)
activity.finish();
}
当然你也可以对你想关闭的activity进行控制:
public void detach(Activity activity){
obsVector.remove(activity);
}
当然前提是你在初始化这个activity时,将每个activity 给添加进去一般我们在oncreate方法中添加进去:
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
context=this;
attach(this);
}
这是观察者模式在项目中普遍用到的,在这里与大家共享一下,有什么问题欢迎大家私信探讨与指教。。
下一篇:为命令模式在项目中的应用。。敬请期待。。
- android-设计模式的应用
- 基于MVP设计模式的Android应用架构设计
- 设计模式的应用
- Android设计模式应用---观察者模式
- Android设计模式应用---单例模式
- Android设计模式应用---适配器模式
- Android设计模式应用---建造者模式
- Android设计模式应用---原型模式
- Android设计模式应用--工厂模式
- Android设计模式应用--策略模式
- Android设计模式应用-责任链模式
- Android设计模式应用-模板方法模式
- Android设计模式应用-代理模式
- Android设计模式应用-装饰器模式
- Android设计模式应用-外观模式
- Android设计模式应用-桥接模式
- Android设计模式应用-组合模式
- Android设计模式应用-享元模式
- ViewStub惰性装载控件
- 恩,今天是被cin.get()戏弄。
- listview当选中某一个item时设置背景色其他的不变
- VC常用小知识
- NSMutableDictionary对象用set方法初始化的键值真的不可修改吗
- android-设计模式的应用
- sql server行版本控制的隔离级别
- Unity3D中Layers和LayerMask解析
- componentsJoinedByString 和 componentsSeparatedByString 的方法的区别
- flex实现图片根据鼠标的滚动放大或缩小(以鼠标的的位置 为中心放大缩小)
- Java程序编译和运行的过程
- ORA-12504:TNS:监听程序在CONNECT_DATA中未获得SERVICE_NAME 2012-12-17 11:27:36 分类: Linux 客户端配置好服务名后,用PL/SQL De
- curl_multi
- ASP.NET母版页中对控件ID的处理