1,Activity 的形态
【1】Active/Running:
-
Activity处于活动状态,此时Activity处于栈顶,是可见状态,可与用户进行交互。
【2】Paused:
-
当Activity失去焦点时,或被一个新的非全屏的Activity,或被一个透明的Activity放置在栈顶时,Activity就转化为Paused状态。但我们需要明白,此时Activity只是失去了与用户交互的能力,其所有的状态信息及其成员变量都还存在,只有在系统内存紧张的情况下,才有可能被系统回收掉。
【3】Stopped:
-
当一个Activity被另一个Activity完全覆盖时,被覆盖的Activity就会进入Stopped状态,此时它不再可见,但是跟Paused状态一样保持着其所有状态信息及其成员变量。
【4】Killed:
-
当Activity被系统回收掉时,Activity就处于Killed状态。
-
Activity会在以上四种形态中相互切换,至于如何切换,这因用户的操作不同而异。了解了Activity的4种形态后,我们就来聊聊Activity的生命周期。
1,生命周期:
方法 | 方法解析 |
onCreate 创建 | 当activity启动的时候调用 一般在这个方法里面加载布局 |
onDestroy 销毁 | 当activity销毁的时候执行 |
onStart 开始 | 当activity变成可视的时候调用 能够用人的眼睛看得见 |
onStop 停止 | 当activity不可见的时候调用 |
onResume | 当activity可以交互了 当页面上的按钮可以被点击了 就说明用户正在和应用进行交互 |
onPause | 当activity不可以交互 讲界面上的按钮不可以点击 |
onRestart | 当界面重新启动调用 在实际开发中这个方法很少用到 |
1,Activity launched (活动展开) 调用 onCreate(创造),onStart(开始),onResume(继续进行,回到)进入Activity Running 状态(活动运行)
2,Another activity comes into the foreground (另一个活动进入前台) 调用onPause()暂停方法 ,user retums to the activity (用户重新链接到活动)--调用onResume(继续进行)
3,the activity is no longer visivle (该活动不再可见) 调用onStop() 停止方法
4,the activity finishing or being destroyed by the system (系统完成或被系统破坏的活动)调用 onDestroy() ---activity shut down活动关闭
5, user retums to the activity (用户重新链接到活动)
6,user navigates to the activity(用户导航到活动)
7,app with higher priority need memory ()
更多关于Activity 详解:https://blog.csdn.net/cricket_7/category_9571387.html