Activity的状态:
1、Active/Running(活动状态):activity处于栈顶,可见,拥有用户焦点,可与用户进行交互。
2、Paused(暂停状态):activity失去用户焦点,不可与用户进行交互。但是可见。会保存所有activity的状态信息和成员变量。当一个非全屏的activity或者透明的activity覆盖于当前activity之上时,activity会处于此状态。内存紧张时可能被回收
3、Stoped(停止状态):不可见,失去用户焦点。被其他非透明全屏的activity覆盖时会处于此状态。但是会保存状态信息和成员变量。内存紧张时可能被回收
4、Killed(销毁状态):activity被系统回收。
Activity的生命周期:
1、onCreate():activity被创建时回调,在此方法中做一些设置布局资源,初始化组件信息等操作
2、onStart():此方法被回调时表明activity正在被启动,此方法执行后activity处于Paused状态,即activity可见,但是无法和用户交互。
3、onResume():一般在此方法中初始化一些在onPause()、onStop()中释放的一些资源,经过此方法,activity处于Running状态,即可见,可与用户交互。
4、onPause():暂停activity,使得activity处于Pause状态,即可见,但是不可和用户交互。执行完此方法后才可执行新activity的生命周期方法。
5、onStop():停止activity,执行此方法后,activity处于Stoped状态,即不可见,不可与用户交互
6、onDestroy():执行此方法后,activity被销毁回收,使之处于killed状态。
7、onRestart():执行onStop()方法,又回到此activity时会执行onRestart()方法,然后执行onStart()方法,使得activity处于可见状态,但是不可和用户进行交互。