Android项目中管理activity(项目活动管理器)

来源:互联网 发布:vps建站 编辑:程序博客网 时间:2024/06/05 07:07

Android中管理activity,随时add activity,finish掉Activity(项目活动管理器)

在android项目中我们需要对activity进行合适的管理,这样对增加项目的可靠性。

基本思路:我们通过会写一个基类,来让项目中需要管理的Activity来继承这个基类,这个基类也继承Activity,我们会对这个基类进行适当的处理,比如在onCreate的生命周期里,把当前的活动添加到活动管理器里,在onDestroy的生命周期里,把当前的活动从活动管理器finish掉。

代码实现:

基类的代码:

public void BaseActivity entends Activity{@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);ActivtyCollector.addActivity(this);}@Overrideprotected void onDestroy(){super.onDestroy;ActivityCollector.removeActivity(this);}}

活动管理器的代码如下:

public class ActivityCollector{public static List<Activity> activities = new          ArrayList<Activity>();public static void addActivity(Activity activity){activities.add(activity);}public static void removeActivity(Activity activity){activities.remove(activity);}public static void finishAll(){for(Activity activity:activities)}{ activity.finish();}}}

上面的addActivity方法为添加活动的到管理器中,removeActivity为去除活动,finishAll方法为退出应用关闭添加进来的所有活动

android的所有活动都是由任务(Task ) 来管理活动的,一个任务就是一组存放在栈里的活动的集合,这个栈也被称为返回栈,栈是一种后进先出的数据结构,在默认的情况下,我们启动一个新的活动,它会在返回栈中入栈,并处于栈顶的位置

2 0