Activity之生命周期

Google Developers
Android Developers

一、生命周期

1、onCreate()

必须要实现该回调方法。系统创建 Activity 时会触发此方法。
在该回调内,需要初始化 Activity 的基本组件:比如说,需要创建视图并绑定所需数据。更重要的是,必须调用 setContentView() 去定义 activity 用户界面的布局。

When onCreate() finishes, the next callback is always onStart().

2、onStart()

onCreate()执行完成后,activity 进入 Started 状态并且 activity变得对用户可见。

此回调方法包含了 活动的最终准备(即 将到达前台并变成可交互的)。

3、onResume()

系统 仅在活动开始与用户交互之前调用该回调。 此时,该活动位于活动栈的顶部,并捕获所有的用户输入。 应用程序的核心功能大部分是在 onResume()方法中实现的。

The onPause() callback always follows onResume().

4、onPause()

当活动失去焦点并进入暂停状态时,系统调用该回调。 例如:当用户轻敲后退announce时会触发这种状态。

当系统调用 onPause() 时,技术上意味着您的活动仍然部分可见,但通常是用户离开活动的知识,并且活动将很快进入停止或恢复装态。

如果用户期望更新UI,暂停状态下的活动可以继续更新UI。这样的活动的示例包括显示导航地图屏幕或播放媒体播放器。即使这样的活动失去焦点,用户也希望他们的UI继续更新。

不应使用 onPause() 来保存应用程序或用户数据、进行网络调用或执行数据库事务。有关保存数据的信息,请参见保存和恢复活动状态。

Once onPause() finishes executing, the next callback is either onStop() or onResume(), depending on what happens after the activity enters the Paused state.

5、onStop()

当活动对用户不可见时,系统调用 onStop()。这可能是因为活动被破坏,新的活动开始,或者现有的活动进入恢复状态并覆盖停止的活动。在所有这些情况下,停止装态的活动根本就看不见了。

系统调用的下一个回调是 onRestart(),如果活动返回到与用户交互;或 onDestroy(),如果此活动完全终止。

6、onRestart()

当停止状态中的活动即将重启时,系统调用此回调。
onRestart() 从停止时恢复活动的状态。

This callback is always followed by onStart().

7、onDestroy()

系统在活动被破坏之前调用这个回调。

这个回调是活动接收到的最后一个回调。onDestroy()通常被实现是为了确保 当活动或包含它的进程被破坏时,所有活动的资源都被释放。

二、理解生命周期

输入图片说明

猜你喜欢

转载自my.oschina.net/Agnes2017/blog/1806352