活动的生命周期
活动在其生命周期中有四个状态:
- 运行状态(栈顶位置)
- 暂停状态(栈顶对话框并未完全覆盖,后面会看到此活动,完全存活着,系统不会回收)
- 停止状态(不处于栈顶位置,完全不可见,保存相应状态和成员变量,当其他地方需要内存时,有可能被系统回收)
- 销毁状态(从返回栈中移除,系统最倾向移除这种活动)
Activity的7个回调方法
- onCreate()
第一次初始化时被调用,加载布局,绑定事件等 - onStart()
不可见变为可见时调用 - onResume()
活动准备好和用户交互时调用,位于栈顶,并且在运行状态 - onPause()
准备启动或恢复另一个活动时调用。释放消耗cpu的资源,保存关键数据,执行速度要快 - onStop()
活动完全不可见的时候调用,若新活动是对话框,onPause()执行,onStop()不会执行 - onDestroy()
销毁之前调用,状态变为销毁状态 - onRestart()
停止状态变为运行状态之前调用,活动被重新启动
3种生存期
- 完整生存期
onCreate()~onDestroy()
初始化~释放内存 - 可见生存期
onStart()~onStop()
资源加载~资源释放
活动对于用户总是可见的 - 前台生存期
onResume()~onPause()
活动处于运行状态,可以和用户进行交互