Android学习第一天--Activity生命周期
Activity生命周期是交给Android系统自己维护的
在android中Activity拥有四种状态:
1、Active/Running:
一个新的Activity启动入栈中后,它在屏幕的最前端,处于栈顶,界面中位可见并且可以和用户进行交互
的激活状态
Ifanactivityintheforegroundofthescreen(attop ofthestack),itisactive orrunning.
2、Paused
当activity被另一个透明的或者Dialog样式的Activity覆盖时的状态,此时,他依然与窗口管理器保持连接,
系统继续维持其内部状态,因此他仍然是可见的,但它已经失去了焦点不能与用户进行交互(但是被窗口管理器管 理),而且在系统资源极度紧缺的时候可能被系统kill掉.
3、Stop
当Activity被另外一个Activity完全覆盖,失去焦点,并不可见的时候处于Stop状态,但是他仍然保存一些信 息,但是不能被用户看见(窗口管理器将他除名),而且极易容易被系统杀掉.
4、Killed
Activity被系统杀死回收或者为启动时的状态
当一个Activity实例被创建、销毁或者启动另一个Activity时,它在四种状态之间进行转换,
这种转换依赖于用户程序的动作。
Activity的状态转换图
Tips:Activity.finish()方法调用之后并不是立即执行onDestory()
方法销毁Activity,只是告诉ActivityManager当前的Activity
完成了相应的工作,可以被系统回收。至于何时被系统回收,有系统自己完成。和返回键一样的效果。
☞
Android是通过一种Activity栈的方式来管理Activity的,一个activity的实例的状态决定了他在栈中的位置。前台的 activity总是位于栈顶,当前台的activity因为异常等原因被销毁,处于栈第二层
的activity被激活,并且上浮到顶部,当新的activity启动的时候
原activity会被压入打栈的第二层,处于栈底的activity实例更容易被系统回收
Activity生命周期
publicclassOurActivityextendsActivity{
protectedvoidonCreate(BundlesavedInstanceState);
protectedvoidonStart();
protectedvoidonResume();
protectedvoidonPause();
protectedvoidonStop();
protectedvoidonDestroy();
}
各个方法调用的时间
更多相关文章
- 浅谈android的selector背景选择器
- 详解 Android(安卓)的 Activity 组件
- Android(安卓)context(Application/Activity)与内存泄露
- Android(安卓)ToggleButton Example--开关按钮
- StevGuo系列文章翻译之Android电源管理
- 浅谈android的selector背景选择器
- android中禁止横屏和竖屏切换
- Android(安卓)UI 之systerm Bar 以及状态栏透明相关的知识点
- Android(安卓)application context/activity context与内存泄露