Activity生命週期 啟動模式 返回棧

2021-09-27 04:24:20 字數 1456 閱讀 2616

啟動模式(launchmode)

清空返回棧

oncreate()

onstart()

onresume()

onpause()

onstop()

ondesdory()

切換到後台的生命週期

onpasue()

onstop()

從後台切換回來

onrestart()

onstart()

onresume()

從a切換到b

a:onpause()

b:oncreate()

b:onstart()

b:onresume()

a:onstop()

從b返回a

b:onpasue()

a:onrestart()

a:onstart()

a:onresume()

b:onstop()

b:ondestory()

總結:

onrestart的呼叫時機:

1、home到後台,再次開啟時;

2、切換到其他應用或介面,返回時呼叫;

切換介面時onresume和onstop時機

1、onresume在其他介面的生命週期之前呼叫;

2、onstop在其他介面生命週期之後呼叫。

standard 預設啟動模式

每啟動乙個activity,建立乙個到棧中;

處理非activity型別的content時加入flag_activity_new_task flag,變為singtask形式。

singletop 棧頂復用模式

1、如果已有例項在棧頂則復用,不會呼叫oncreate()、onstart(),呼叫onnewintent(),onresume();

2、否則新建。

如果自己啟動自己生命週期

onpasue()

onnewintent()

onresume()

singletask 棧內復用

如果已有例項在棧中,復用,例項以上activity全部出棧

呼叫onnewintent()

啟動棧內singletaskactivity

onnewintent()

onstart()

onresume()

singleinstance

系統中只有乙個例項,並新建乙個棧。

1、alwaysretaintaskstate 加在底層的activity一直儲存

2、cleartaskonlaunch 屬性設定給最底層,離開再返回時,底層以上全部清除

3、finishontasklaunch 除最低層外的activity在離開後單個清除。

activity 的生命週期及狀態及啟動模式

1.執行狀態 2.暫停狀態 3.停止狀態 4.銷毀狀態 oncreat 此方法 是activity 初次建立的時候 自動呼叫的 一般用來載入布局 初始化控制項等 onstart 此方法 是activity 由不可見 到可見的時候 自動呼叫的 onresume 此方法是activity 位於棧頂時 可...

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...