基本的生命周期,
--onCreate()
(Activity创建时调用 )
--onStart()
(可见未获取焦点,无法与之交互 )
--onResume()
(可见已获取焦点,可与之交互 )
--onPause()
(可见,失去焦点 )
--onStop()
(不可见 )
--onRestart()
(Activity重启)
--onDestroy()
(Activity销毁)
--onSaceInstanceState
可能会被回收的时候调用,与上面的先后顺序各个Android版本不同
--onResotreInstanceState
没有被回收的话就不会调用
--onConfigurationChanged
各种情况下的生命周期
1.正常通过startActivity或者桌面快捷方式直接启动直到可见可正常交互
onCreate()
--onStart()
--onResume()
2.正常销毁,(在onResume之后),执行finish()
方法或者点击回退按钮
onPause()
--onStop()
--onDestroy()
3.在onCreate()
里调用finish()
onCreate
--onDestroy()
4.在onStart()
里调用finish()
onCreate
--onStart
--onStop
--onDestroy
5.正常启动后按下Home键(API4.4onSaveInstanceState
在onPause
之后)
onPause
--onSaveInstanceState
--onStop
6.按下Home键没回收之前再点开
onRestart
--onStart
--onResume
7.出现Dialog
不调用任何生命周期
8.出现Dialog主题的Activity
onPause
--onSaveInstanceState
9.去掉dialog
onResume
10.在manifest
文件设置android:configChanges
属性orientation|keyboard|screenSize
切换横/竖屏
onConfigurationChanged
11..在manifest
文件设置android:configChanges
属性orientation|keyboard
在4.4以上横屏
onPause
--onSaveInstanceState
--onStop
--onCreate()
--onStart()
--onResume()
4.4以下(不一定,跟是否改变了屏幕大小有关)横屏
onConfigurationChanged
竖屏4.4以下
onConfigurationChanged
竖屏4.4以上
onPause
--onSaveInstanceState
--onStop
--onCreate()
--onStart()
--onResume()
11..在manifest
文件设置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.设置launchMode的情况下,如果只是把Acitvity调回到前台
会执行onNewIntent()