Activity生命周期

来源:互联网 发布:知乎 匿名回答 编辑:程序博客网 时间:2024/05/23 19:23

 

Activity的三种状态

Activity 有三种状态,分别是运行状态、暂停状态以及停止状态。

运行状态:

当Activity 在屏幕的最前端(位于当前堆栈的顶部),它是可见的、有焦点的。可以用来进

行处理用户的操作(点击、双击、长按等),那么就叫做激活或运行状态。值得注意的是,

当Activity 处于运行状态的时候,Android 会尽可能的保持它的运行,即使出现内存不足

等情况,Android 也会先杀死堆栈底部的Activity,来确保运行状态的Activity 正常运行。

暂停状态:

在某些情况下,Activity 对用户来说,仍然是可见的,但不再拥有焦点,即用户对它的操

作是没用实际意义的。在这个时候,它就是属于暂停状态。例如:当最前端的Activity 是

个透明或者没有全屏,那么下层仍然可见的Activity 就是暂停状态。暂停的Activity 仍然

是激活的(它保留着所有的状态和成员信息并保持与Activity 管理器的连接),但当内存不

足时,可能会被杀死。

注意:也不是所有的Activity 失去焦点就会进入暂停状态。这点在示例部分会详细说明。

停止状态:

当Activity 完全不可见时,它就处于停止状态。它仍然保留着当前状态和成员信息。然而这

些对用户来说,都是不可见的;同暂停状态一样,当系统其他地方需要内存时,它也有被杀

死的可能。

生命周期事件:

Activity 状态的变化是人为操作的,而这些状态的改变,也会触发一些事件。我们且叫它生

命周期事件。一共有7 个。

void onCreate(Bundle savedInstanceState)

void onStart()

void onRestart()

void onResume()

void onPause()

void onStop()

void onDestroy()

Activity生命周期图:

Activity生命周期总结:

1.Activity 从创建到进入运行状态所触发的事件:onCreate()