Overview: Activity

State

onCreate() ………… onDestroy()

onStart() …………… onStop()

onResume() ………… onPause()


onCreate(): 一開始建立 Activity 時呼叫。

onStart(): Activity 即將要讓使用者看到之前呼叫。

onResume(): Activity 即將與使用者開始互動之前呼叫。

onPause(): 系統即將開始繼續另一個 Activity 時呼叫。

onStop(): 使用者看不到 Activity 時呼叫。

onDestroy(): 在 Activity 終止前呼叫。

螢幕方向改變時,系統會終止 Activity 並重新建立,以便套用針對新的螢幕設定而提供使用的替代資源。

當兩個 Activity 位於相同的處理程序,而其中一個 Activity 啟動另一個 Activity 時。 Activity A 啟動 Activity B 時所發生的操作順利如下:

  1. Activity A 的 onPause() 方法會執行。
  2. Activity B 按順序執行 onCreate()onStart() 以及 onResume() 方法。 (Activity B 現在擁有使用者焦點)。
  3. 然後,如果螢幕上已經看不到 Activity A,就會執行 Activity A 的 onStop() 方法。

這一段可預測的生命週期回呼,可以讓您管理 Activity 之間資訊的轉換。 例如,如果第一個 Activity 停止時,您必須寫入資料庫,讓接下來的 Activity 可以讀取,那麼您應該在 onPause() 期間寫入,而不是在 onStop() 期間寫入。