android生命周期()

1.什么是Activity:

简单的说:Activity就是布满整个窗口或者悬浮于其他窗口上的交互界面.在一个应用程序中通常由多个Activity构成,都会在Manifest.xml中指定一个主的Activity,

如下设置:

  <activity

  android:label="@string/app_name"

  android:name=".MainActivity">

    <intent-filter>

    <action android:name="android.intent.action.MAIN"/>

    <category

  android:name="android.intent.category.LAUNCHER"

      </intent-filter>

    </activity>

 

当程序第一次运行时用户就会看这个Activity,这个Activity可以通过启动其他的Activity进行相关操作.

当启动其他的Activity时,当前的这个Activity将会停止,新的Activity将会压入栈中,同时获取用户焦点,这时就可在这个Activity上操作了.

我们都知道栈是先进后出的原则,那么当用户按Back键时,当前的这个Activity销毁,前一个Activity重新恢复.

 

 

2.Activity生命周期:

 

 

Activity经历如下3个阶段:

开始Activity: 在这个阶段依次执行3个生命周期的方法,分别是onCreate,onStart, onResume方法.

Activity重新获得焦点: 如果Activity重新获得焦点,会依次执行3个生命周期,分别是onRestart, onStart和onResume.

关闭Activity: 当Activity被关闭时系统会依次执行3个生命周期方法,分别是: onPause, onStop和 onDestory.

 

从以上的Activity的生命周期不难看出,改图包含了两层循环,

第一层循环是: onPause->onResume->onPause

第二层循环是: onRestart->onStart->onResume->onPause->onStop

我们可以将这两层的循环看成整个Activity的生命周期的子生命周期

第一层循环称为焦点生命周期,第二层循环可以视为生命周期

也就是说,第一层循环在Activity焦点获得与失去的过程中循环,在这个过程中,Activity始终是可见的,第二层循环是Activity可见与不可见的过程中循环

这个过程中伴随着Activity焦点的获得与失去,也就是说,Activity首先会被显示,然后会获得焦点,接着失去焦点,最后弹出其他的Activity

  Activity具体的生命周期如下:

  整体的生命周期: onCreate->...->onDestory

  可视生命周期: onStart->...->onStop

  焦点生命周期: onResume->....->onPause

 

 

 

 

 

 

 

 

posted @ 2013-04-14 19:27  佬D  阅读(303)  评论(0编辑  收藏  举报