2016-3-5

活動的生命週期

   Android使用任務(Task)來管理活動,一個任務就是存放在返回棧中的活動的集合。棧是後進先出的結構,系統總是顯示位於棧頂的活動,當一個活動調用finish時就會出棧。

 

活動的狀態

   1、運行狀態:位於棧頂的活動,系統最不願意收回這種活動的資源

   2、暫停狀態:不再棧頂的活動,但是因爲棧頂活動的大小緣故而仍然可見的活動,因爲仍然可見所以系統也一般不會收回這部分的資源。

   3、停滯狀態:不處在棧頂且不可見的活動,系統有可能收回資源。

   4、銷燬狀態:出棧後的活動,系統會優先收回這部分的資源。

 

 

活動的函數

   1、onCreate()

   在活動第一次被創建時調用。

   2、onStart()

   活動由不可見變爲可見時調用。

   3、onResume()

   活動準備好與用戶進行交互時調用,此時活動需要處於返回棧的棧頂,並處於運行狀態。

   4、onPause()

   要啓動或恢復其他活動時使用,使本活動暫停,回收部分資源。

   5、onStop()

   在活動完全不可見時調用。它和onPause的區別在於如果新活動是對話框式的活動,則onPause會執行,而onStop不會執行。

   6、onDestroy()

   活動被銷燬前調用,調用後活動被銷燬。

   7、onRestart()

   停止的活動重新啓動活動。

 

 

活動的生存期

   1、完整生存期

  onCreate到onDestroy間是完整生存期。

   2、可見生存期

  onStart到onStop間是可見生存期。

   3、前臺生存期

   活動在onResume到onPause間爲前臺生存期。這個期間活動是運行狀態,且可交互。

 

 

臨時數據的保存

   當一個活動被停止時,可能活動會被後臺殺死,當重新進入這個活動時不是調用onRestart而是調用了onStart重新建立了活動,可以使用onSaveInstanceState()對臨時數據進行保存。這個方法第一個參數是鍵值,第二個參數是實際傳遞的數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章