我有一个有多个活动的应用,一个活动打开另一个,依此类推。回到之前的活动时,我遇到了严重的问题。我想在我离开它的状态下返回上一个活动(我不想重新创建活动)。我能够通过三个活动完成此操作,但第四个活动会跳过第三个活动并返回到第二个活动,例如:
活动A - >活动B - >活动C - >活动D
当我按下后退按钮和向上按钮时我想要的是什么:
活动A< - 活动B< - 活动C< - 活动D
我将活动A作为“singleTask”启动,然后我启动接下来的三个活动:
Intent intent = new Intent(context, ActivityB.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(intent);
startActivity(intent);
这与活动B和C完美配合,但当我到达活动D并尝试返回活动C时,它将我带到活动B而不是活动C.
我已经通过互联网,我似乎真的了解Intent标志和活动启动模式的使用。有人可以帮忙吗,好吗?
答案 0 :(得分:0)
使用启动模式和标志是问题所在。也许你想要分配活动A" singleTop",但是在启动B,C或D时你不需要使用标志(至少在你没有这种情况下)#39;重新描述)。然后按下后将按照您的预期行事(除非您重写它)。