Android应用activity四种状态及生命周期

Posted 石家庄铁道大学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android应用activity四种状态及生命周期相关的知识,希望对你有一定的参考价值。

android应用activity四种状态及生命周期

一、四种状态

running可见,并且可操作一个新的Acivity入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见,并且可以和用户交互的状态。
paused暂停 可见但不能被操作当Activity被另一个透明或者Dialog样式的Activity覆盖时的状态,此时它依然与窗口管理器保持连接,系统继续维护其内部状态,所以它仍然可见,但它已经失去了焦点所以不可以与用户交互。(可见但不能被操作)。
stopped处于停止状态,不可见,也不可以被操作当Activity被另一个acivity覆盖,失去焦点并不可见时处于停止状态。
killed处于销毁状态activity被系统回收或者没有被启动时处于销毁状态。

这是关于四种状态的示例

需要注意的是

  • 当一个Android应用运行时,Android系统以Activity栈的形式管理应用中的全部Activity
  • 当一个Activity实例被创建、销毁或者启动另外一个Activity时,它在这四种状态之间进行转换,这种转换的发生依赖于用户程序的动作。
  • Android定义了一系列与生命周期相关的方法,在Activity中只是根据需要重写需要的方法。

    四种状态转换关系如下

二、生命周期

生命周期图

生命周期方法

onCreate(Bundle savedStatus)创建Activity时被回调,只会被回调一次该方法在Activity的实例被Android系统创建后第一个被调用。通常在该方法中设置显示屏幕的布局、初始化数据、设置控件被点击的事件响应代码。
onStart()启动Activity时被回调在Activity可见时执行
onRestart()重启Activity时被回调回到最上边的界面,再次可见时执行
onResume()恢复Activity时被回调,onRestart() 方法之后一定会回调该方法Activity获取焦点时执行。
onPause()暂停Activity时被回调Activity失去焦点时执行。
onStop()停止Activity被回调用户不可见进入后台时执行。
onDestroy()销毁Activity时被回调Activity销毁时执行

注意:

  • 生命周期方法 , 成对出现(配对)
  • onCreate() & onDestory()
  • onStart() & onStop()
  • onResume() & onPause()

以上是关于Android应用activity四种状态及生命周期的主要内容,如果未能解决你的问题,请参考以下文章

Android Activity生命周期

Activity-运行状态及生命周期

Android Activity组件及其生命周期

Android-1Activity生命周期

Android 中Activity和Intent的详解

Android Activity 生命周期中onStart()和onResume()的区别