如上图,activity从创建到销毁的声明周期方法:
- onCreate :创建Activity,初始化activity
- onStart :启动Activity,activity已经可见
- onResume:activity获得焦点
- onPause:activity失去焦点。新的activity会在此方法后启动
- onStop:activity停止运行
- onDestroy:销毁activity
- onRestart:重新启动
Activity A 跳转到Activity B 经历生命周期方法:
A:onPause ➜ B: onCreate、onStart、onResume ➜ A:onStop
下面是A跳转B的生命周期日志:
: =====A onPause
: =====B onCreate
: =====B onStart
: =====B onResume
: =====A onStop
B返回A:
: =====B onPause
: =====A onRestart
: =====A onStart
: =====A onResume
: =====B onStop
: =====B onDestroy
熄屏、屏幕唤起时生命周期:
熄屏:onPause、onStop
: =====A onPause
: =====A onStop
屏幕唤起:onRestart、onStart、onResume
: =====A onRestart
: =====A onStart
: =====A onResume
按home健返回桌面在返回当前Activity和上面生命周期一致:
: =====A onPause
: =====A onStop
: =====A onRestart
: =====A onStart
: =====A onResume
横竖屏切换时生命周期
activity先销毁在创建:
onPause ➜ onStop ➜ onDestroy ➜ onCreate ➜ onStart ➜ onResume
: =====A onPause
: =====A onSaveInstanceState
: =====A onStop
: =====A onDestroy
: =====A onCreate
: =====A onStart
: =====A onRestoreInstanceState
: =====A onResume
横竖屏切换时,可以在onSaveInstanceState和onRestoreInstanceState作数据的恢复与保存