標簽: Java AndroidStudio
《第一行代碼》的第二章即將告一段落,其中推薦了幾種關于Activity的最佳實踐!
1. 隨時退出程序
使用一個專門的集合類對所有的活動進行管理
新建一個ActivityCollector
public class ActivityCollector extends BaseActivity {
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();
}
}
}
}
2. 接下來修改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);
}
}
其余的每個活動全部繼承BaseActivity,用這個方法串接每個活動!!
3 .想要在哪個活動中結束整個App,即可在那個活動中調用
ActivityCollector.finishAll( )
即可殺死所有活動代碼!!
亦可加上代碼殺掉當前進程,保證程序完全退出!