如何强制我的Android应用程序在singleTop启动模式下打开相同活动的新实例

时间:2016-08-09 14:47:10

标签: android listview android-intent

我的Android应用程序有一个名为ListQuotes的类,如名称所示,它显示引号列表。它可以在三个实例中打开:

  1. 从列表中选择一个人来查看他的报价
  2. 单击工具栏上的“收藏夹引号”按钮
  3. 从菜单中选择一个类别(“关于爱情的引用”,“关于友谊的引用”等等)
  4. 每次启动该类时,应用程序都会检查Intent以确定其来源并显示相应的列表。

    我将其启动模式设置为singleTop,以便当我按下后退按钮并保留意图时,应用程序不会尝试重新加载该类。

    然而,通过这样做,如果ListQuotes已经是前台活动,我无法从工具栏加载收藏夹。换句话说,如果我选择一个作者来显示他的引号,然后点击“收藏夹”按钮,它就不会做任何事情。

    是否有办法使活动的启动模式保持在singleTop中,但是您强制应用程序在特定情况下打开活动的新实例?或者,也许,将启动模式作为标准,但有办法恢复以前的意图?或者我应该为我的收藏夹单独开展活动?

    我希望这很清楚,我很久没有编程了,所以我可能会遗漏一些东西。提前谢谢。

1 个答案:

答案 0 :(得分:0)

删除singleTop启动模式。这将允许您创建另一个实例。你的陈述:

  

我将其启动模式设置为singleTop,以便应用程序不会尝试   当我按下后退按钮并且意图是,重新加载课程   保留。

毫无意义,因为按下BACK不会引起这种陌生感。