Android 生命周期详解

Android 生命周期详解

  • [一、Activity 完整生命周期](#一、Activity 完整生命周期)

一、Activity 完整生命周期

  1. onCreate() :页面第一次创建时调用,只执行一次。

    主要处理 setContentView、初始化控件、初始化数据、绑定 TabHost。

    参数 savedInstanceState:页面重建时恢复状态用。

  2. onStart() :页面变为可见但还不能交互。

    从后台切回前台、解锁屏幕都会执行。

  3. onResume():页面获取焦点,可以点击、交互

  4. onPause():页面失去焦点,退到后台。

  5. onStop():页面完全不可见。

  6. onDestroy() :页面即将销毁时调用,只执行一次。

    用于释放资源、注销广播、停止服务。

  7. onRestart() :页面从后台回到前台,但没被销毁。

    流程:onStop → onRestart → onStart → onResume

完整执行流程

① 正常打开 → 关闭

复制代码
onCreate() → onStart() → onResume() →(运行中)
→ 按返回键退出
→ onPause() → onStop() → onDestroy()

② 打开 → 回到桌面 → 再切回 APP

复制代码
onCreate → onStart → onResume
→ 回到桌面
→ onPause → onStop
→ 切回APP
→ onRestart → onStart → onResume

③ 屏幕旋转(Activity 重建)

复制代码
onPause → onStop → onSaveInstanceState → onDestroy
→ 重建
→ onCreate → onStart → onResume

额外两个状态保存方法

  • onSaveInstanceState(Bundle outState)

    页面可能被系统销毁时调用,存储当前 tab、输入框文字、列表位置。

  • onRestoreInstanceState(Bundle savedInstanceState)

    页面重建后调用,比 onCreate 晚,比 onStart 早。

相关推荐
杉氧16 小时前
深入理解 Compose 重组机制:快照系统如何驱动 UI 精准刷新?
android·架构·android jetpack
召钱熏16 小时前
状态枚举正确≠渲染正确:一个语音按钮的状态机边界修复实录
android·前端
杉氧16 小时前
深度解析:Jetpack Compose 核心架构与底层原理 —— 十年安卓老兵的“破茧重生”
android·架构·android jetpack
通玄17 小时前
Jetpack Compose 入门系列(七):ViewModel 与界面状态管理
android
落魄Android在线炒饭17 小时前
Android Framework 开发技巧:android.jar 生成与系统快速编译验证
android
如此风景18 小时前
Kotlin Flow操作符学习
android·kotlin
plainGeekDev18 小时前
GreenDAO → Room
android·java·kotlin
weiggle19 小时前
第八篇:ViewModel + Compose——生产级状态管理实践
android
恋猫de小郭1 天前
Amper 正式转正 Kotlin Toolchain ,Gradle 未来何去何从
android·前端·flutter
plainGeekDev1 天前
ButterKnife → ViewBinding
android·java·kotlin