【Android】活动的生命周期与启动模式
活动的生命周期
返回栈
返回栈(Back Stack)是Android操作系统中用于管理用户在应用中导航历史的一种数据结构。它允许用户通过按下硬件返回键或调用系统返回功能来回到之前的操作步骤。以下是返回栈的一些关键特点和行为:
基本概念
- 栈结构:返回栈遵循后进先出(LIFO)的原则,即最后加入栈的
Activity
会最先被移除。 - 导航:当用户启动一个新的
Activity
,当前的Activity
被推入返回栈。用户可以通过返回操作回到前一个Activity
。
生命周期与返回栈的关系
- 入栈**(Pushing)**:当一个新的
Activity
被启动时,如果android:launchMode
不是singleTask
或singleInstance
,当前Activity
将被推入返回栈。 - 出栈**(Popping)**:当用户按下返回键,当前
Activity
将从返回栈中弹出,用户将返回到前一个Activity
。 - 栈顶(Top of Stack):返回栈的顶部是当前在屏幕上显示的
Activity
。
返回栈的操作
- 显式意图(Explicit Intent):使用显式意图启动
Activity
时,可以通过设置Intent
的标志如FLAG_ACTIVITY_CLEAR_TOP
来影响返回栈的行为。 - 隐式意图(Implicit Intent):使用隐式意图时,系统可能会启动一个新的
Activity
栈。 - finish() 方法&