簡述Activity生命週期

2021-10-10 10:53:34 字數 943 閱讀 8576

android是使用任務(task)管理活動的,乙個任務就是一組存放在棧裡的活動的集合,這個棧也 被稱為返回棧。新活動啟動進入棧,處於棧頂,當back或finish()銷毀乙個活動時,棧頂的活動會出棧,前乙個入棧的活動重新處於棧頂位置,顯示給使用者。

執行狀態:處於棧頂。

暫停狀態:不再處於棧頂但仍可見。(記憶體極低時系統會考慮**這種活動)

停止狀態:不再處於棧頂,並且完全不可見。(系統會儲存相應的狀態和成員變數,但是這並不是完全可靠的,當其他地方需要記憶體時,處於停止狀態的活動有可能會被系統**)

銷毀狀態:系統從返回棧中移除後進入銷毀狀態。(系統最傾向**此狀態的活動,保證手機記憶體充足)

oncreate()在活動第一次被建立的時候呼叫。作用:完成初始化操作,如:載入布局,繫結事件等等。

onstart()活動由可見變為不可見時呼叫。作用:對資源進行載入。

onresume()方法準備好和使用者進行互動時呼叫。此時活動處於返回棧的棧頂,處於執行狀態。

onpause()在系統準備啟動或者恢復另乙個活動時被呼叫。作用:消耗cpu的資源釋放掉,儲存一些關鍵資料,此方法速度一定要快,不然會影響新的棧頂活動使用。

onstop()活動完全不可見時呼叫。

ondestroy()在活動被銷毀之前呼叫。作用:會完成釋放記憶體的操做。 ondestroy()之後活動的狀態將便會銷毀狀態,

onrestart()在活動由停止狀態變為執行狀態之前呼叫,也就是活動被重新啟動了。

三種生存週期:

①完整生存週期:在oncreate()方法到ondestroy()方法之間經歷的,就是完整生存期。前者完成所有初始化操作,後者完成釋放記憶體的操作。

②可見生存期:在onstary()方法和onstop()方法之間所經歷的。活動總處於可見狀態。

③前台生存期:在onresume()方法和onpause()方法之間經歷的就是前台生存期。活動總是處於執行狀態的,可與使用者互動。

Activity生命週期

oncreate 設定activity所使用的布局檔案 按鈕繫結 等靜態設定操作 onstart 該activity能被我們看到的時候就會呼叫onstart onresume 能夠獲得使用者焦點 onpause 啟動另外乙個activity的時候就會呼叫第乙個activity的該方法 onstop ...

activity生命週期

乙個activity的啟動順序 oncreate onstart onresume 當另乙個activity啟動時 第乙個activity onpause 第二個activity oncreate onstart onresume 第乙個activity onstop 當返回到第乙個activity...

Activity 生命週期

activities 在系統中是以 activity 棧的形式被管理的。當乙個新的 activity 啟動時,它將會被放到棧的頂部並變成 running activity 上乙個activity 會被至於它的下面,在新 activity 存在期間它都不會到前端來。乙個 activity 有四個重要的...