background image

根据

Activity 的复杂度,你可能不需要实现所有的生命周期方法。不管怎样,重要的

是你要理解每个回调方法并能实现它们,以确保你的

App 表现得如用户期望的那样。正确

地实现

Activity 的生命周期方法以确保你的 App 在以下几个方面表现良好,包括:

用户在使用你的

App 时接到电话或切换到其它 App 时,不能崩溃。

用户不再和

App 频繁交互时,不能浪费宝贵的系统资源。

当用户离开

App 并在稍后返回时,不能丢失用户的进程。

当屏幕在水平和垂直方向间切换时,用户的进程不能丢失或崩溃。

在接下的课程中你将学习到,

Activity 在图一所示的不同状态间转换的几种情况。任

何情况下,这些状态中只有三个会静止不变,也就是说,同一时间只能存在以下三个状态
中的一个:

Resumed

这个状态下,

Activity 运行在前台,并且用户可以和它交互(有时也被称为

“Running”状态)。

Paused

这个状态下,

Activity 被另一个 Activity

——

部分遮盖

另一个

Activity 运行在前

台,并且背景是半透明的或者没有覆盖整个屏幕。暂停的

Activity 不会接收用户

输入,也不会执行任何代码。

Stopped

这个状态下,

Activity 完全隐藏并对用户不可见,它被认为处于后台。当停止时,

Activity 实例以及它所有的状态信息,如成员变量仍然保持,但不会执行任何代
码。

其它状态(

Create 和 Started)非常短暂,系统通过调用下一个生命周期方法,很快

从它们移动到下一个状态。也就是说,系统调用

onCreate()之后,很快调用 onStart(),

接着又立即调用

onResume()。

这就是

Activity 生命周期的基本知识,现在你要开始学习某些特定的生命周期行为。

指定你的

App 的启动 Activity

当用户从

Home 屏幕上选择你的 App 图标时,系统在 App

内为你声明的 执行 (或