2

我有一个包含多个活动的 Android 应用程序。主要活动通过网络进行通信,并且可以根据通过网络接收的命令启动或关闭各种其他活动。当一个 Activity 被解除时,我不想这样做finish(),只需将它移到堆栈中,这样它就不再是顶部的 Activity。我真正需要的是一个 FLAG_ACTIVITY_REORDER_TO_BOTTOM 但没有这样的东西。

有一个名为FLAG_ACTIVITY_PREVIOUS_IS_TOP的意图标志,名称暗示类似的意思,但我不明白描述:

“如果设置并且此意图用于从现有活动启动新活动,则当前活动将不被视为决定是否应将新意图传递到顶部而不是启动新活动的顶级活动。以前的活动将被用作顶部,假设当前活动将立即完成”

有人可以为我解码,如果这不是我想要的,是否有某种方法可以告诉活动将自己淹没在前一个活动之下?

4

2 回答 2

0

您不能将某个活动下方的活动移动到 android back Stack。在回栈中移动一个活动的唯一方法是在它上面打开另一个活动。您可以通过使用FLAG 'singleTop'创建单个活动实例来将活动移到顶部,这样您的活动将被移动到另一个活动的顶部,并且堆栈中只有一个活动实例。

有关活动回栈和标志的更多信息可在此处获得。

浏览此信息,您对后堆栈的所有疑虑都会得到解决。

于 2013-10-18T16:51:50.413 回答
0

这是不可能的。活动是堆叠的,你不能把一个放回另一个下面。听起来您可能想要创建一个扩展 Android 的 android.app.Application 的类。

我在网上找到了这个教程,看起来不错。祝你好运。

扩展Android的android.app.Application教程

于 2013-10-18T16:23:00.993 回答