標籤:
Activity生命週期方法:
Activity是android四大系統核心組件之一,主要用於處理介面相關業務,響應使用者在介面上的相關操作。在此介面執行的相關耗時操作(例如:
子線程休眠,從不穩定的網路擷取資料等)原則上都應
在子線程中執行以避免ANR:Application Not Responding。
對象從建立到銷毀的整個過程都會執行特定的聲明周期方法。
一、當對象第一次被啟動時:執行onCreat()方法——>onStart()方法——>onResume()方法;
二、當對象不可見時:執行onPause()方法——>onStop()方法;
三、當對象重新可見時:執行onRestart()方法——>onStart()方法——>onResume()方法;
四、當對象被銷毀時:執行onPause()方法——>onStop()方法——>onDestory()方法。
註:以上方法由系統調用,而當需要主動銷毀其他的對象時,需要手動調用finish()方法。
Activity的狀態:
對象狀態大致分為四種,1、運行態:置於前台,可見並可控。
2、停止態:置於後台,不可見並不可控。
3、終止態:被銷毀,即Activity已經回調了onDestroy()方法。
4、暫停態:Activity局部可見,但不可控,通常是由其它非Activity遮擋導致的。
Activity的建立:
建立類繼承Activity後,首先進行註冊,建立其布局。其次在新建立的類中重寫onCreat()方法。
Activity的啟用以及銷毀:
當需要啟用新的對象時,調用startActivity(Intent)方法,銷毀調用finish()方法。
Activity的啟動模式;
系統使用任務棧用於記錄應用程式已經啟用的Activity組件,而當Back返回鍵被使用時,系統會根據任務棧中的記錄,顯示上一次的介面。
組件通過壓棧和彈棧的方式被記錄在任務棧中。而組件的啟動模式將影響其在任務棧中的記錄,在android工程清單設定檔AndroidManifest.xml
中的<activity>節點內配置android:launchMode屬性。屬性分為四種:1、當每次啟用Activity對象時,會建立新的對象並且壓棧的標準模式standard,這個模式是預設的。
2、當Activity處於棧頂位置被啟用時候,則不會建立新的對象的棧頂唯一模式singleTop。3、當任務棧中沒有改Activity時,啟用將會建立新的對象並且壓棧,當其已經存在
時,按下Back鍵,啟用將不會建立新的對象,而是彈棧,此時若有其他Activity位於其之上的都會被強制彈棧。即singleTask,棧內唯一模式。4、獨自佔有一個任務棧的singleInstance棧內執行個體唯一模式。
關於android核心組件Activity的一些總結