activity的生命週期
- onCreate():
活動第一次建立的時候被調用,常作初始化的操做,比加載佈局(setContentView),綁定事件(findViewById)。表示Activity正在建立。
- onStart():
活動由不可見到可見的時候被調用,表示Activity正在啓動,此時Activity可見但不在前臺。
- onResume():
活動準備好和用戶進行交互時調用。表示Acitivity得到焦點,此時Activity可見且在前臺。
- onPause():
系統準備去啓動或恢復另外一個活動時調用。表示Activity正在中止,此時可作存儲數據,中止動畫等操做。
- onStop():
在活動徹底不可見的時候調用。表示Activity即將中止。
- onDestory():
在活動被銷燬以前調用,表示Activity即將銷燬,常作回收工做、資源釋放。
- onRestart():
在活動由中止狀態變爲運行狀態以前調用。表示Activity即將重啓。
生命週期的切換過程
- 啓動Activity: Starting ——–>Running
- 所執行的生命週期順序 onCreate()->onStart()->onResume()
系統會先調用onCreate方法,而後調用onStart方法,最後調用onResume,Activity進入運行狀態。當前稱爲活動狀態(Running),此Activity所處於任務棧的top中,能夠與用戶進行交互。web
- 當前Activity被其餘Activity覆蓋其上(部分可見)或被鎖屏: Running ——>Paused
- 所執行Activity生命週期中的onPause()
系統會調用onPause方法,暫停當前Activity的執行。該Activity已失去了焦點但仍然是可見的狀態(包括部分可見)。svg
- 當前Activity由被覆蓋狀態回到前臺或解鎖屏: Paused ——>Running
系統會調用onResume方法,再次進入運行狀態。佈局
- 當前Activity被新的Activity界面徹底覆蓋或按Home鍵回到主屏,自身退居後臺: Running——>Paused ——>Stoped
- 所執行的生命週期爲: onPause()->onStop()
系統會先調用onPause方法,而後調用onStop方法,進入停滯狀態。(該Activity被另外一個Activity徹底覆蓋的狀態,該Activity變得不可見,因此係統常常會因爲內存不足而將該Activity強行結束。)動畫
- 從後臺回到前臺退回到此Activity: Stoped——>Running
- 所執行的生命週期爲: onRestart()->onStart()->onResume()
系統會先調用onRestart方法,而後調用onStart方法,最後調用onResume方法,再次進入運行狀態。.net
- 用戶退出當前Activity: Stoped——>killed
系統先調用onPause方法,而後調用onStop方法,最後調用onDestory方法,結束當前Activity。xml
- 當一個Activity打開另外一個Activity都會回調哪些方法,若是ActivityB是徹底透明的呢,若是啓動的是一個對話框Activity呢?
A:onPause->B:onCreate->B:onStart->B:onResume->A:onStopblog
若是ActivityB是徹底透明的或對話框Activity則不會調用onStop。生命週期
- 啓動新Activity後,又返回到舊的Activity
B:onPause->A:onRestart->A:onStart->A:onResume->B:onStop->B:onDestory事件
activity的生存期
活動的生存期分爲三個:
1.完整生存期
2.可見生存期
3.前臺生存期圖片
- 完整生存期:
onCreate()方法與onDestory()都處於完整生存期,通常狀況下,Activity會在onCreate()方法中完成各類初始化操做,而在onDestory()方法中完成釋放內存的操做。
- 可見生存期:
onStart()方法與onStop()方法就是可見生存期,Activity對於用戶是可見的,但沒法與用戶交互。onStart()方法中對資源進行加載,onStop()方法中對資源進行釋放。
- 前臺生存期:
onResume方法與onPause方法就是前臺生存期,在前臺生存期內,活動處於運行狀態,此時能夠與用戶交互。
圖
https://blog.csdn.net/encounterto/article/details/82144305 https://blog.csdn.net/xiajun2356033/article/details/78741121 https://blog.csdn.net/weixin_41796401/article/details/102860545