Android Studio開發學習日志2

標簽: 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( )

即可殺死所有活動代碼!!

亦可加上代碼殺掉當前進程,保證程序完全退出!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,067評論 25 708
  • Activity的啟動模式 在實際項目中需要根據特定的需求為每一個Activity指定恰當的啟動模式。 啟動模式一...
    寒橋閱讀 988評論 0 0
  • Day1: 在代碼中通過R.string.hello_world可以獲得該字符串的引用; 在XML中通過@stri...
    冰凝雪國閱讀 1,441評論 0 5
  • 當你決定要學習android的時候,這時候就需要制定一個學習路線,而我們應該從哪里入手呢?你可以想象一下,當你打開...
    強大帥閱讀 7,918評論 2 10
  • 我是一個很平和的人,一般情況下,是很不樂意和別人發生沖突的,總是能避開就避開。我不喜歡沖突。但以前害怕沖突。 但今...
    原同學閱讀 590評論 0 0