使用FLAG_ACTIVITY_NO_HISTORY&amp ;;在Android应用中导航startActivityForResult

时间:2012-10-18 10:21:34

标签: android

我在使用FLAG_ACTIVITY_NO_HISTORYstartActivityForResult的Android应用中导航时出现问题。

以下是一个例子:

我有第A页和第B页。我使用FLAG_ACTIVITY_NO_HISTORY从A到B。然后我用startActivityForResult拍照。

问题是,现在我回到第A页,但我想回到第B页。

当我删除历史记录中我不想拥有的FLAG_ACTIVITY_NO_HISTORY页面B时。

如何解决此问题?

3 个答案:

答案 0 :(得分:2)

使用历史记录,但是当您返回到页面B时,只需调用this.finish()。 此活动将结束。 您可能会看到您的页面B一秒钟(可能取决于您的代码,以进行测试)。

希望这个解决方案可以帮到你。

答案 1 :(得分:1)

您正在离开

1。第A页 - >带有标记FLAG_ACTIVITY_NO_HISTORY

的页面B.

2。您使用startActivityForResult

从第B页开始另一项活动

现在当你回来时,没有Page B找到了旗帜FLAG_ACTIVITY_NO_HISTORY的bcoz。

现在从FLAG_ACTIVITY_NO_HISTORY activty中移除标记Page B,当您在onActivityResult()的{​​{1}}内收到回调时,Page B finish() page B活性。

答案 2 :(得分:0)

这真的取决于你的代码。

希望你以这种方式尝试。

Intent intent = new Intent(this,SomeOtherClass.class);

intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY); //不要将此意图保留在历史记录中。

startActivity(意向);

尝试或上传您的代码,以便我详细了解。