Activity生命周期简洁版

1.启动一个activity和按返回键关闭activity时的生命周期
Activity生命周期简洁版
文章图片

Activity生命周期简洁版
文章图片

正常启动关闭activity:onCreate —> onStart —> onResume —> onPause —> onStop —> onDestroy
2.先打开activity,接着按下home键,再打开activity,再关闭
Activity生命周期简洁版
文章图片

启动activity:onCreate —> onStart —> onResume
按下Home键:onPause —> onStop
重新打开: onRestart —> onStart —> onResume
关闭: onPause —> onStop —> onDestroy
3.先打开activity,从一个activity跳转到另一个activity
Activity生命周期简洁版
文章图片

假设 A–MainActivity, B–TwoActivity
启动第一个activity:A_onCreate —> A_onStart —> A_onResume
跳转到第二个activity:A_onPause —> B_onCreate —> B_onStart —> B_onResume —> A_onStop
特殊: 当点击跳转按钮从A跳转到B后快速点返回键时,A_onStop并不执行。
Activity生命周期简洁版
文章图片

再回到上一个activity:B_onPause —> A_onRestart —> A_onStart —> A_onResume —> B_onStop —> B_onDestroy
4.activity异常情况下生命周期,如横竖屏时
Activity生命周期简洁版
文章图片

启动activity:onCreate —> onStart —> onResume
旋转屏幕:onPause —> (onSaveInstanceState) —> onStop —> onDestroy —> onCreate —> onStart —> (onRestoreInstanceState) —> onResume onSaveInstance和onRestoreInstance是只有Activity异常销毁的时候才会调用的,所以这里一般执行的是Activity异常销毁时需要保存和恢复的数
【Activity生命周期简洁版】5.横竖屏时做处理时
Activity生命周期简洁版
文章图片

当在AndroidMainfest.xml里:

android:configChanges="orientation|screenSize"//界面方向以及大小的改变不需要重建


当加了这个属性后,横竖屏生命周期没有变化。

    推荐阅读