每个
Activity 的状态是由它在 Activity 栈(是一个后进先出 LIFO,包含所有正在运行
Activity 的队列)中的位置决定的。
当一个新的
Activity 启动时,当前的活动的 Activity 将会移到 Activity 栈的顶部。
如果用户使用后退按钮返回的话,或者前台的
Activity 结束,在栈上的 Activity 将会移
上来并变为活动状态。如下图所示:
一个应用程序的优先级是受最高优先级的
Activity 影响的。当决定某个应用程序是否要
终结去释放资源,
Android 内存管理使用栈来决定基于 Activity 的应用程序的优先级。
Activity 状态 一般认为 Activity 有以下四种状态:
活动的:当一个
Activity 在栈顶,它是可视的、有焦点、可接受用户输入的。Android 试
图尽最大可能保持它活动状态,杀死其它
Activity 来确保当前活动 Activity 有足够的资源可
使用。当另外一个
Activity 被激活,这个将会被暂停。
暂停:在很多情况下,你的
Activity 可视但是它没有焦点,换句话说它被暂停了。有可