标签:
Application的生命周期是最长的,随着程序的启动而创建,整个程序的结束才会被销毁。我们常常把一些需要保存的全局变量保存在Application,而不是保存在Activity中,那样还如果我们希望持有某些Activity的引用,不希望该Activity被销毁,我们在Application中将这些Activity保存到List中。
public synchronized static void register(Activity activity){
if(activityList!=null){
for(int i=0;i<activityList.size();i++){
Activity ac=activityList.get(i);
if(ac.getClass().getName()==activity.getClass().getName()){
//删除旧的,添加新的
activityList.remove(ac);
if(!ac.isFinishing()){
ac.finish();
}
break;
}
}
activityList.add(activity);
}
}
public synchronized static void unregister(Activity activity){
if(activityList!=null && activityList.size()!=0){
for(int i=0;i<activityList.size();i++){
Activity ac=activityList.get(i);
if(ac.getClass().getName()==activity.getClass().getName()){
activityList.remove(activity);
if(!ac.isFinishing()){
ac.finish();
}
}
}
}else{
Log.i("TAG", "No Activity in Pool");
}
}
标签:
原文地址:http://blog.csdn.net/u010852801/article/details/45287925