Activity的生命周期
Activity是Android中的四大組件之一,也是最基本,最重要的組件,是android系統(tǒng)提供一個可視化的,能與用戶交換的組件。
系統(tǒng)提供的組件,不需要用戶實例化,用戶也不能實例化,是系統(tǒng)進(jìn)行回調(diào),例如web開發(fā)的servlet也是系統(tǒng)提供的,和android 的其他系統(tǒng)組件一樣。
那么不需要我們實例化我們怎么用呢,這些組件都有相同的特點就是:
1.都需要在配置文件中注冊 2.都需要自定義類去繼承系統(tǒng)的Api 3.都有自己的生命周期
那么Activity的生命周期有那些方法呢:
1.onCreate 2.onStart 3.onrestart 4.onResume 5.onpause 6.onstop 7.ondestroy
Activity總共有以上7個回調(diào)方法
Activiy總共有三種小的生命周期
場景一
一個Activity的開啟到銷毀
OnCreate---onStart----onResume------onPause-----Onstop---onDestroy
這是一個完整的生命周期
場景二
A Activity 跳轉(zhuǎn)到 到 B Activity (BActivity是完全覆蓋AActivity)
AOnCretate-----AOnStart----AOnResume------AOnPause------BOnCreate-----BOnStart------BOnReSume ----AOnStop
B activity 返回到A Activity生命周期執(zhí)行的回調(diào)是:
BOnPause---AOnRestart--AOnResume---BOnstop---BOnDestory
場景三
A Activity跳轉(zhuǎn)到B Activity(B Activity 是一個 對話框形式的Activity 或者 BActivty是一個透明的)
AOnCretate-----AOnStart----AOnResume ------AOnPause------BOnCreate-----BOnStart------BOnReSume ----
B activity 返回到A Activity生命周期執(zhí)行的回調(diào)是:
BOnPause---AOnResume---BOnstop---BOnDestory
場景四
手機(jī)的橫豎屏切換,android的生命周期方法的重新執(zhí)行,
onPause onstop ondestroy oncreate onstart onresume
如果想橫豎屏切換時,不重新走生命周期,需要清單為Activity配置屬性:configChanges
也可以設(shè)置屏幕 鎖定為橫屏或豎屏 ,screenOrientation:lanscape | portriant
2、Activity的四種狀態(tài)
運行 onResume暫停 onPause停止 onStop銷毀 onDestroy
3、Activity的三個生命周期
1>完整的 onCreate——onDestroy2>可見的 onStart——onStop3>活動的 onResume——onPause
Activity的堆棧管理模式
數(shù)據(jù)結(jié)構(gòu) 隊列:先進(jìn)先出 棧:先進(jìn)后出 每打開一個Activity,將會入棧,退出一個,將會出棧,采用棧的先進(jìn)后出結(jié)構(gòu)
啟動模式
standard 標(biāo)準(zhǔn)啟動singleTop 單一棧頂保證棧頂只有一個實例,任務(wù)棧中可能有很多實例場景:瀏覽器 書簽singleTask 單一任務(wù)棧 保證 所在的任務(wù)棧 ,只有一個實例 比如說設(shè)置 A 為此模式,保證整個任務(wù)棧只有A一個實例,如果棧頂有其他Activity,再打開A時,將棧頂其他Activity全部出棧。場景 如:webkit 內(nèi)核singleInstance單一實例 保證整個系統(tǒng)的棧中,只有一個實例 比如說設(shè)置 A 為此模式,那么 A將單獨使用一個任務(wù)棧場景:打電話 、鬧鈴響
如有疑問大家留言或者到社區(qū)討論,共同進(jìn)步,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點
疑難解答
圖片精選