android学习笔记——BaseActivity使用
2016-04-21 18:18
561 查看
我们都知道BaseActivity的作用就是将一些所有Activity都会用到的方法抽象出来到一个父类中去,之后子类只需要继承这样一个BaseActivity就可以完成一些常用的方法而不需要重新编写。
在这里我们写一个活动管理器,来方便应用程序对其Activity的管理与注销
新建一个ActivityCollector类作为活动管理器
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){
if (! activity.isFinishing()){
activity.finish();
}
}
}
}
接下来我们修改一下BaseActivity中的代码
public class BaseActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d("BaseActivity", getClass().getSimpleName());
ActivityCollector.addActivity(this);
}
@Override
protected void onDestroy() {
super.onDestroy();
ActivityCollector.removeActivity(this);
}
}
这样,当我们需要在应用中把所有Activity跟随软件的退出而销毁时,只需要调用一下ActivityCollector的静态方法就可以了。
在这里我们写一个活动管理器,来方便应用程序对其Activity的管理与注销
新建一个ActivityCollector类作为活动管理器
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){
if (! activity.isFinishing()){
activity.finish();
}
}
}
}
接下来我们修改一下BaseActivity中的代码
public class BaseActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d("BaseActivity", getClass().getSimpleName());
ActivityCollector.addActivity(this);
}
@Override
protected void onDestroy() {
super.onDestroy();
ActivityCollector.removeActivity(this);
}
}
这样,当我们需要在应用中把所有Activity跟随软件的退出而销毁时,只需要调用一下ActivityCollector的静态方法就可以了。
相关文章推荐
- android学习笔记——Socket简单介绍
- android学习笔记——蓝牙介绍
- android学习笔记——MVP模式介绍
- Android adb logcat使用技巧
- CardView,android代码设置颜色没效果,解决
- Android 6.0 动态权限申请注意事项
- Android 调用堆栈跟踪
- android学习笔记——保存Activity的状态
- Android AsyncTask异步处理消息机制
- 如何成为安卓软件开发工程师?
- AndroidStudio 打包及引用aar
- [Android] AS 中 Gradle 配置运行浅析
- Android热补丁动态修复技术(四):自动化生成补丁——解决混淆问题
- android学习笔记——关于Activity的启动模式(更新)
- Android事件传递机制解析
- Gradle for Android 第七篇( Groovy入门 )
- Gradle for Android 第六篇( 测试)
- Android 动画特效集合
- Android TextView加上阴影效果
- Gradle for Android 第四篇( 构建变体 )