2025-05-23

 
Android程序中的每個活動在其存在期間都會處於以下多種狀態之一,開發人員不能控制程序處於哪個狀態,是由系統管理的。但是通過onXX()方法調用改變狀態時,系統會通知開發人員。需要在activity類中重寫這些方法,而Android會在合適的時間調用下面這些方法:
onCreate(Bundle)              首次啟動活動時會調用該方法。可以使用該方法執行一次性的初始化工作,如創建用戶界面。onCreat()接受一個參數,可以是null或由onSaveInstenceState()方法以前保存的某些狀態信息。
onStart()                             該方法說明瞭將要顯示給用戶的活動
onResume()                        用戶可以開始與活動進行交互時會調用該方法。這個方法非常適合開始播放動畫和音樂。
onPause()                            活動將要進入後臺時會運行該方法,活動進入後臺的原因通常是前臺啟動瞭另一個活動。還應該在該方法用保存應用程序的持久性狀態,如正在編輯的數據庫記錄。
onStop()                            用戶無需看到某個活動,或者在一段時間內不需要某個活動時,可以調用該方法。如果內存不足,可能永遠都不會調用onStop()系統可能隻是終止進程
onRestart()                     如果調用該方法,則表明要將已處於停止狀態的活動重新顯示給用戶
onDestroy()                 銷毀活動前會調用該方法。如果內存不足,可能永遠都不會調用,系統可能隻是終止進程。
onSaveInstanceState(Bundle)                        Android調用該方法的作用是讓活動可以保存每個實例的狀態,如光標在文本字段中的位置。通常無需重寫該方法,因為該方法的實現會自動保存所有用戶界面控件的狀態。
onRestoreInstanceStare()                      使用onSaveInstanceState()方法以前保存的狀態重新初始化某個活動時會調用該方法。默認實現會還原用戶界面的狀態。

沒有在前臺中運行的活動可能已經被停止,或者是容納這些活動的Linux進程已經被“殺死”(結束),從而為新的活動騰出空間。這是經常出現的情況,所以在一開始設計應用程序時就應該註意,在某些情況下,onPause()方法可能是活動中調用的最後一個方法,所以才應該在該方法中保存下次需要繼續使用的任何數據。 

摘自  Click Here 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *