Activity作為Android的四大組建之一,也是最主要的組件,它承載著app與用戶之間的直接聯(lián)系。因此這篇文章主要從Activity的生命周期來入手,了解一下Activity的工作流程。
Acitvity主要有七大生命周期onCreate,onStart,onResume,,onPause,onStop,onRestart,onDestroy。下面我們就看圖了解一下這7個(gè)生命周期之前的聯(lián)系。

onCreate:Activity生命周期的第一個(gè)方法,在這個(gè)方法中可以做加載布局,或者一些初始化的工作,例如:數(shù)據(jù)初始化,資源加載
onStart:Activity正在被啟動(dòng),但是當(dāng)前Activity處于不可見狀態(tài)
onRestart : Activity正在被重新啟動(dòng),也就是當(dāng)前Activity從不可見狀態(tài)到可見狀態(tài),會(huì)調(diào)用onRestart方法
onResume :Activity處于可見狀態(tài),每次加載Activity onResume方法都會(huì)執(zhí)行,因此之前的工作中,會(huì)在onresume方法中做一些每次出現(xiàn)頁面需要跟新數(shù)據(jù)的操作;
onPause :Activity 正在停止,緊接著onStop就回被調(diào)用。在特殊情況下快速回到當(dāng)前Activity,那么onresume就會(huì)被調(diào)用。
onStop: Activity即將停止,可以做一些輕量級(jí)的回收工作;
onDestroy :銷毀Activity ,做回收工作,資源釋放;
正常的Activity啟動(dòng): onCreate --》onStart -->onResume
當(dāng)用戶切換到新的Activity或者切換到界面的時(shí)候 調(diào)用 onPause -->onStop
當(dāng)用戶再一次回到之前的Activity的時(shí)候 onRestart -->onStart -->onResume.
當(dāng)用戶按返回鍵銷毀當(dāng)前Activity的時(shí)候 onPause -->onStop -- >onDestroy;
如果Activity沒有做處理,在使用的時(shí)候屏幕會(huì)發(fā)生橫豎屏切換,這個(gè)時(shí)候系統(tǒng)會(huì)將我們的Activity進(jìn)行銷毀重建,所以會(huì)調(diào)用onPause -->onStop -->onDestroy
因?yàn)樵揂ctivity是在異常情況下終止的,系統(tǒng)會(huì)調(diào)用onSaveInstanceState,來保存當(dāng)前界面上的試圖數(shù)據(jù),在Activity重建的時(shí)候OnRestoreInstanceState ,并且會(huì)得到Activity意外銷毀是通過onSaveInstanceState方法保存起來的數(shù)據(jù)
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注