基本的生命周期,
--onCreate()
(Activity創(chuàng)建時調(diào)用 )
--onStart()
(可見未獲取焦點充边,無法與之交互 )
--onResume()
(可見已獲取焦點洪添,可與之交互 )
--onPause()
(可見,失去焦點 )
--onStop()
(不可見 )
--onRestart()
(Activity重啟)
--onDestroy()
(Activity銷毀)
--onSaceInstanceState
可能會被回收的時候調(diào)用,與上面的先后順序各個Android版本不同
--onResotreInstanceState
沒有被回收的話就不會調(diào)用
--onConfigurationChanged
各種情況下的生命周期
1.正常通過startActivity或者桌面快捷方式直接啟動直到可見可正常交互
onCreate()
--onStart()
--onResume()
2.正常銷毀,(在onResume之后),執(zhí)行finish()
方法或者點擊回退按鈕
onPause()
--onStop()
--onDestroy()
3.在onCreate()
里調(diào)用finish()
onCreate
--onDestroy()
4.在onStart()
里調(diào)用finish()
onCreate
--onStart
--onStop
--onDestroy
5.正常啟動后按下Home鍵(API4.4onSaveInstanceState
在onPause
之后)
onPause
--onSaveInstanceState
--onStop
6.按下Home鍵沒回收之前再點開
onRestart
--onStart
--onResume
7.出現(xiàn)Dialog
不調(diào)用任何生命周期
8.出現(xiàn)Dialog主題的Activity
onPause
--onSaveInstanceState
9.去掉dialog
onResume
10.在manifest
文件設(shè)置android:configChanges
屬性orientation|keyboard|screenSize
切換橫/豎屏
onConfigurationChanged
11..在manifest
文件設(shè)置android:configChanges
屬性orientation|keyboard
在4.4以上橫屏
onPause
--onSaveInstanceState
--onStop
--onCreate()
--onStart()
--onResume()
4.4以下(不一定,跟是否改變了屏幕大小有關(guān))橫屏
onConfigurationChanged
豎屏4.4以下
onConfigurationChanged
豎屏4.4以上
onPause
--onSaveInstanceState
--onStop
--onCreate()
--onStart()
--onResume()
11..在manifest
文件設(shè)置android:configChanges
屬性orientation
切橫屏
onPause
--onSaveInstanceState
--onStop
--onCreate()
--onStart()
--onResume()
切豎屏4.4以上一次2.3以下2次
onPause
--onSaveInstanceState
--onStop
--onCreate()
--onStart()
--onResume()
onPause
--onSaveInstanceState
--onStop
--onCreate()
--onStart()
--onResume()
12.設(shè)置launchMode的情況下,如果只是把Acitvity調(diào)回到前臺
會執(zhí)行onNewIntent()