第四天:活動(dòng)的生命周期

1、Activity簡介

在Android中的Activity是通過任務(wù)Task來管理的。一個(gè)任務(wù)就是存在棧里的活動(dòng)的集合,這個(gè)棧也被稱作返回棧,棧是一種先進(jìn)后出的數(shù)據(jù)結(jié)構(gòu),在默認(rèn)的情況下,每當(dāng)我們i啟動(dòng)一個(gè)新的活動(dòng),它就i進(jìn)入返回棧,并處于棧頂位置,而當(dāng)我們按下Back鍵或者調(diào)用finish()方法去銷毀一個(gè)活動(dòng)時(shí),處于棧頂位置的活動(dòng)就會(huì)出棧,這時(shí)候先前入棧的活動(dòng)就會(huì)重新處于棧頂位置。系統(tǒng)總是顯示處于棧頂?shù)幕顒?dòng)給用戶。

返回棧工作示意圖


2、Activity的活動(dòng)狀態(tài)

每個(gè)活動(dòng)在其生命周期中最多 可能有以下4種狀態(tài):

2.1、運(yùn)行狀態(tài):當(dāng)一個(gè)活動(dòng)處于棧的頂部時(shí),這個(gè)活動(dòng)就處于運(yùn)行狀態(tài),系統(tǒng)最不愿意回收的就是處于棧頂?shù)幕顒?dòng)。

2.2、暫停狀態(tài):當(dāng)一個(gè)活動(dòng)不處于棧頂位置時(shí),但其界面仍然可以看見就是暫停狀態(tài)。比如彈出一個(gè)Dialog遮擋住但未完全遮擋住原來的活動(dòng)。那么原來的活動(dòng)就是暫停狀態(tài)。

3.3、停止?fàn)顟B(tài):也就是此時(shí)活動(dòng)不處于棧頂位置,且完全不可見的狀態(tài)就是停止?fàn)顟B(tài)。

3.4、銷毀狀態(tài):當(dāng)一個(gè)活動(dòng)被移除返回棧的狀態(tài)

3.活動(dòng)的生命周期

Acvtivity類中定義了7個(gè)回調(diào)方法,覆蓋了活動(dòng)的生命周期的所有環(huán)節(jié)。

onCreate():此方法在活動(dòng)創(chuàng)建的時(shí)候那就被調(diào)用。在這一方法中我們就應(yīng)該完成活動(dòng)的初始化操作:比如加載布局、綁定事件等

onStart():此方法在活動(dòng)不可見轉(zhuǎn)為可見的時(shí)候調(diào)用。

onResume():這個(gè)方法在活動(dòng)準(zhǔn)備好和用戶進(jìn)行交互的時(shí)候調(diào)用。

onPause():這個(gè)方法在系統(tǒng)準(zhǔn)備啟動(dòng)另一個(gè)新的活動(dòng)或者 回復(fù)其他活動(dòng)的時(shí)候調(diào)用。

onStop():這個(gè)方法在活動(dòng)完全不可見的情況調(diào)用。

onDestory():這個(gè)方法在活動(dòng)在被銷毀之前調(diào)用

onRestart():這個(gè)方法在活動(dòng)由停止?fàn)顟B(tài)轉(zhuǎn)變?yōu)檫\(yùn)行狀態(tài)時(shí)調(diào)用

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容