在Android开发中,Activity的启动模式(LaunchMode)是控制Activity实例创建、复用及在任务(Task)中排列方式的重要机制。理解并掌握这些模式对于构建高效、流畅的用户体验至关重要。本文将详细探讨standard
、singleTop
、singleTask
和singleInstance
这四种启动模式,并通过实例和图示来加深理解。
1. standard(标准模式)
默认行为:
- 默认情况下,如果未指定
<activity>
的android:launchMode
属性,则使用standard
模式。 - 每次通过
startActivity()
方法启动Activity时,系统都会创建一个新的Activity实例,并将其放置在调用它的Activity所在的任务(Task)的栈顶。
实例演示:
假设我们有一个FirstActivity
,并在其内部有一个按钮,点击该按钮会再次启动FirstActivity
。在standard
模式下,每次点击按钮都会创建一个新的FirstActivity
实例,并将它们依次压入任务栈中。因此,需要连续按多次后退键才能回到最初的FirstActivity
实例。
图示说明:
Task Stack: