1.1 Activity 生命周期 - TomeOkin/Learning-Notes GitHub Wiki
Activity 生命周期
生命周期

需要特别注意的是:
- 当用户打开一个新的 Activity 时,如果新的 Activity 采用了透明主题,当前 Activity 不会回调 onStop。
- 当 Activity 不可见后,如果用户再次回到该 Activity 时,回调如下:onRestart -> onStart -> onResume。
- onStart和- onStop对应,它们是从 Activity 是否可见这个角度来回调的;- onResume和- onPause方法对应,它们是从 Activity 是否位于前台这个角度来回调的。优先级从高到低依次为:前台 Activity;可见但非前台 Activity;后台 Activity。
- 系统只会在 Activity 即将被销毁并且有机会重新显示的情况下才会去调用 onSaveInstanceState方法。see
- 启动一个新的 Activity 时,需要旧的 Activity 的 onPause先执行后,新的 Activity 的onResume才会执行,所以不要在onPause里执行耗时操作。
- 如果要修改 Activity 的窗体大小,需要在 onAttachedToWindow中进行。
扩展阅读
- xxv/android-lifecycle 详细完整的生命周期图
- 之前自己做的生命周期图 目录里有对应的 ddd 文件,有什么问题欢迎指出
- Android应用程序窗口(Activity)的视图对象(View)的创建过程分析
- onAttachedToWindow()在整个Activity生命周期的位置及使用
- 视图状态保存的正确方式
文章说明
- 本文主要是在《Android 开发艺术探索》读后总结的基础上加入了一些相关的知识。
- 上文引用到的生命周期图取自《Android 开发艺术探索》。