您的位置:首页 > 移动开发 > Android开发

Android Activity生命周期

2012-02-15 21:45 197 查看
 
Activity生命周期
在系统中的Activity被一个Activity栈所管理。当一个新的Activity启动时,将被放置到栈顶,成为运行中的Activity,前一个Activity保留在栈中,不再放到前台,直到新的Activity退出为止。
 
Activity有四种状态:
       1.active or running  运行状态

              activity在屏幕的前台,也就是Activity栈顶

 

       2.Paused  暂停状态

              一个Activity失去焦点,但是依然可见(一个新的非全屏的Activity 或者一个透明的Activity 被放置在栈顶)。一个暂停状态的Activity依然保持活力(保持所有的状态,成员信息,和窗口管理器保持连接),但是在系统内存极端低下的时候将被杀掉。

 

       3.Stopped  停止状态

             一个Activity被另外的Activity完全覆盖掉。它依然保持所有状态和成员信息,但是它不再可见,所以它的窗口被隐藏,当系统内存需要被用在其他地方的时候,Stopped的Activity将被杀掉。

 

      4. 一个Activity是Paused或者Stopped状态,系统可以将该Activity从内存中删除,Android系统采用两种方式进行删除,要么要求该Activity结束,要么直接杀掉它的进程。当该Activity再次显示给用户时,它必须重新开始和重置前面的状态。

 

     下面是Activity的生命周期图

 



 
 
方法名称 描述 Killable?(能否被杀掉)
下一个调用的方法

onCreate()

当这个Activity第一次被创建的时候,调用此方法。这个方法通常用于:1、为Activity设置所要使用的布局文件2、为按钮绑定监听器等静态的设置操作。
No onStart()

onStart()

当Activity处于可见状态时,调用此方法。 No
onResume()
or onStop()

onResume()

开始与用户进行交互时(能够获得用户焦点,可以进行点击等操作的时候),调用此方法。 No
onPause()

onRestart()

之前被停止,现在重新启动,调用此方法。 No
onStart()

onPause()

当系统启动另外一个新的Activity时,先调用前一个Activity的此方法。这个方法通常用于:保存现有的Activity中的数据、停止动画等,这个实现方法必须非常快。YesonResume()  or  onStop()

onStop()

当Activity处于不可见状态时(现有的Activity被新的Activity完全覆盖时),调用之前Activity的此方法。
 
 
推荐博客:Android_Tutor  两分钟彻底让你明白Android Activity生命周期(图文)!  http://blog.csdn.net/Android_Tutor/article/details/5772285
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android
相关文章推荐