关闭堆栈上的多个活动

时间:2013-11-18 20:07:12

标签: java android

发现很多类似的问题,但没有一个适合我的情况。

基本上我有一个像这样流动的Android应用程序:

HOME >> CHECKOUT 1 >> CHECKOUT 2 >> CONFIRMATION PAGE

一旦我们到达确认页面,我想“完成”两个结帐页面,因为我不希望用户看到已经提交的订单,如果他们要点击后退按钮。一旦确认订单,我就知道如何完成Checkout 2页面,但我不知道如何在堆栈中“级联”以完成两者。

当用户点击确认页面上的“返回”时,他们应该转到主屏幕。我知道如何用Intents做这个,但这对后退按钮没有好处。除非我覆盖后退按钮行为并执行以下操作:

Intent intent = new Intent(getApplicationContext(), Home.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

但我觉得这很黑。有人知道正确的方法吗?某种Checkout1.onResume可能会查找的会话变量?

干杯

1 个答案:

答案 0 :(得分:0)

我最终只是覆盖了onBackPressed方法并使用了这个

Intent intent = new Intent(getApplicationContext(), Home.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

在标记答案之前我会等待一段时间,以防有人有更好的方法。