活动生命周期
活动是可以叠加的,其结构像是一个栈结构
back 或finish销毁一个活动的时候
将最上次的活动移除
活动的状态
运行状态:活动处于栈顶
暂停状态:活动不在栈顶的时候,但仍然可见
停止状态:不在栈顶,完全不可见,系统仍然保留相应的状态和成员变量
销毁状态:从栈中移除后
生命周期方法
onCreate 第一创建的时候调用,完成活动的初始化工作
onStart 不可见变为可见时调用
onResume 准备好和用户交互时调用,活动一定位于栈顶,且处于运行状态
onPause 系统启动或者恢复另一个活动时候调用,通常在这里释放消耗cpu的资源,
保存关键数据,执行速度会影响新的栈顶活动
onStop 活动不可见时调用
如果启动是一个对话框式的活动,不会调用调用该方法, 会调用onPause方法
onDestory 销毁之前调用
onRestart 停止变为运行时执行
onSaveInstanceState 活动收回之前一定会调用
活动的启动模式
android:launchMode ="" //来制定启动的模式
standard
活动默认启动模式
每次启动一个活动,就会将这个活动入栈,每次启动都会创建一个新的实例
singleTop
活动位于栈顶的时候不会创建新的实例,类似单例设计模式吧
singleTask
启动活动时,会先检查该活动是否存在于栈
singleInstance
启动一个新的返回栈来管理这个活动,用来共享该活动的实例