如何在启动另一个之前综合添加活动到后台?

时间:2017-01-20 19:50:19

标签: java android android-activity kotlin back-stack

让我们说我在活动A中。我想开始活动B,但是如果他们按下活动B,我希望用户被带到活动C.

即使用户看到A - > B,我希望它是A - > C - >乙

我知道我可以使用TaskStackBuilder并合成创建ABC堆栈。但是,有时A不仅仅是一项活动;可能会有一些用户做过的导航,我不想丢失,用TaskStackBuilder进行综合重新创建会很麻烦。

有没有办法使用TaskStackBuilder保持当前的堆栈?或者是否还有其他方法可以在启动另一个活动之前将活动综合添加到后台堆栈?

1 个答案:

答案 0 :(得分:1)

您可以执行的操作是覆盖活动onBackPressed()中的B,您将从此处启动活动C并完成活动B。从用户的角度来看,他会看到:

A - > B - > (背压事件) - > ç

在靠背中:

A - > AB - > AC

@Override
public void onBackPressed() {
    super.onBackPressed();

    Intent intent = new Intent(this, ActivityC.class);
    startActivity(intent);
    finish();
}