额外的REORDER_TO_FRONT

时间:2011-09-28 09:11:14

标签: android android-activity android-intent

在一个应用程序中,我重复使用了Activity,它显示了特定日期发生的事情列表。使用Intent Extras指定日期。

我的问题是,如果用户从day=1开始,然后从菜单中选择day=2然后选择day=1,那么我希望后退按钮转到{{ 1}}然后回家。也就是说,我想做day=2,但不仅仅是基于活动的名称,还有它的附加内容。

没有接缝是适合此目的的任何意图标志。我已经考虑过使用REORDER_TO_FRONT实现我自己的“子活动堆栈”,但它可能效果不好。

您是否在应用中解决了类似的问题?是否有一种方法可以以编程方式访问活动堆栈,并选择哪一个适合返回?

1 个答案:

答案 0 :(得分:1)

管理您自己的活动堆栈!如果我没弄错的话,你每天都会使用相同的Activity来显示。将其设为单顶(FLAG_ACTIVITY_SINGLE_TOP)。在启动意图中,传递当前堆栈,在您的示例中为“121”。

通过使用较小的堆栈启动Activity来响应后退按钮事件:“12” - 或者如果堆栈已经是“”,则只需让Activity处理Back事件。然后如您所述,使用onNewIntent函数更新您的Activity。