Activity生命周期的三种状态

Activity生命周期的三种状态生命周期就是一个对象从创建到销毁的过程,每一个对象都有自己的生命周期。同样,Activity也具有相应的生命周期,Activity的生命周期中分

欢迎大家来到IT世界,在知识的湖畔探索吧!

生命周期就是一个对象从创建到销毁的过程,每一个对象都有自己的生命周期。同样,Activity也具有相应的生命周期,Activity的生命周期中分为三种状态,分别是运行状态、暂停状态和停止状态。接下来将针对Activity生命周期的三种状态进行详细地讲解。

1、运行状态

当Activity在屏幕的最前端时,它是可见的、有焦点的。可以用来处理用户的常见操作,如点击、双击、长按事件等,这种状态称为运行状态。

2、暂停状态

在某些情况下,Activity对用户来说仍然是可见的,但它不再拥有焦点,即用户对它的操作是没有实际意义的。例如,当最上面的Activity没有完全覆盖屏幕或者是透明的,被覆盖的Activity仍然对用户可见,并且存活(它保留着所有的状态和成员信息并保持与Activity管理器的连接)。但当内存不足时,这个暂停状态的Activity可能会被杀死。

3、停止状态

当Activity完全不可见时,它就处于停止状态,但仍然保留着当前状态和成员信息。然而这些对用户来说都是不可见的,如果当系统内存不足时,这个Activity很容易被杀死。

值得一提的是,当Activity处于运行状态时,Android会尽可能地保持它的运行,即使出现内存不足的情况,Android也会先杀死栈底部的Activity,来确保可见的Activity正常运行。

Activity从一种状态转变到另一种状态时会触发一些事件,执行一些回调方法来通知状态的变化,具体方法如下所示:

  • void onCreate(Bundle savedInstanceState):创建时执行
  • void onStart():可见时执行
  • void onRestart():回到前台,再次可见时执行
  • void onResume():获取焦点时执行
  • void onPause():失去焦点时执行
  • void onStop():用户不可见进入后台时执行
  • void onDestroy():销毁时执行

为了让初学者更好理解Activity的三种状态以及不同状态时使用的方法,Google公司专门提供了一个Activity生命周期模型的图例,具体如下图所示。

Activity生命周期的三种状态

Activity的生命周期

从图中可以看出,当Activity从启动到关闭时,会依次执行【onCreate()】→【onStart()】→【onResume()】→【onPause()】→【onStop()】→【onDestroy()】方法。当Activity执行到onPause()方法失去焦点时,重新调用回到前台会执行onResume()方法,如果此时进程被杀死Activity重新执行时会先执行onCreate()方法。当执行到onStop()方法Activity不可见时,再次回到前台会执行onRestart()方法,如果此时进程被杀死Activity会重新执行onCreate()方法。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/35740.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信