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学习第一天--Activity生命周期_第1张图片



更多相关文章

  1. 我来说说Android touch 系统的设计哲学
  2. 安卓系统框架介绍
  3. Android 编译系统分析之返璞归真(一)
  4. 让Python在Android系统上飞一会儿:第一节 在手机上配置Python运
  5. Android怎样修改系统时间?
  6. Android制作并替换系统开机动画bootanimation.zip(需root)
  7. Android输入子系统之InputReader读取键盘消息过程分析
  8. 实时Android语音对讲系统架构
  9. Android 进入界面禁止EditText弹出系统键盘,点击后再弹出系统键盘

随机推荐

  1. android之PopUpWindow使用实例
  2. android 获取未安装apk的icon、name等信
  3. android 短信群发
  4. Android 创建菜单
  5. android GMS认证之testNoDebuggable
  6. Android获取有线和无线(wifi)的IP地址
  7. android 获取电话本中的联系人列表
  8. Android(安卓)应用性能优化综述
  9. 这是什么水平
  10. Android(安卓)View - 实现流式布局