如何更改活动历史记录

时间:2017-12-26 20:46:53

标签: android android-activity

有六种活动A,B,C,D,E和F.它们按以下顺序打开:A,B,C,D,E,F。当我现在从活动F转到活动B时,我希望随后按下后退按钮打开活动A.如何实现这一结果?

1 个答案:

答案 0 :(得分:0)

您可以使用Intent标志来实现此目的。

当您从活动F开始活动B时,您在意图中使用了一个标记。

Intent i = new Intent(context, B.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);

Intent.FLAG_ACTIVITY_CLEAR_TOP将导致所有中间活动完成(C,D和F),Intent.FLAG_ACTIVITY_SINGLE_TOP将确保您返回活动B的相同实例。

如果您希望完成活动B并创建新实例,请删除Intent.FLAG_ACTIVITY_SINGLE_TOP

此外,您可以更改活动B launchMode,而不是使用Intent.FLAG_ACTIVITY_SINGLE_TOP

Here是关于此事的更多信息