Android:从相机返回后创建新活动,而不是返回到以前的活动

Posted

技术标签:

【中文标题】Android:从相机返回后创建新活动,而不是返回到以前的活动【英文标题】:Android: new activity is created after returning from camera instead of returning to previous activity 【发布时间】:2012-06-09 11:43:13 【问题描述】:

我有一个活动 A,您可以在其中按下一个按钮,然后在从图库中选择一张照片和拍摄一张新照片之间进行选择。当从图库中选择一张照片时,一切都很好,并且图像显示在活动 A 中。如果你想拍一张新照片,相机应用程序将被打开,你可以拍照并保存。现在奇怪的事情发生了:不是返回到您选择拍照的上一个活动 A,而是创建并启动一个新的活动 A (A') 实例。我不知道为什么它没有返回到活动 A... 活动 A 是否有可能超时,这就是创建新实例的原因?或者有什么其他想法为什么要创建一个新实例?

【问题讨论】:

看看这个:***.com/questions/10411009/… 【参考方案1】:

设置

android:noHistory = "true"

在MainActivity中

AndroidManifest.xml

【讨论】:

【参考方案2】:

使用startActivityForResult 启动相机活动。当您想返回上一个活动时,只需使用setResult 并调用finish() 进行当前活动。 您可能会再次为活动 A 调用 startActivity(),因此它再次被创建。 所以试试这个,让我知道它可以解决问题。 :)

【讨论】:

在活动 A 中,我使用 startActivityForResult 来启动相机。不知道是不是看错了,但是相机app不是设置setResult并调用finish吗? 抱歉没听明白?您使用的是默认摄像头还是自定义摄像头? 你能发布你的代码吗?启动相机并调用 onActivityResult() 的代码。 我使用的是默认相机。从活动 X 我启动活动 A。按下按钮时,我打开一个选择器(从图库中选择图像或拍摄新照片)。选择“拍一张新照片”后,我使用 startActivityForResult 打开默认相机应用程序。在用户拍照后,相机应用程序完成并将图像返回到 onActivityResult。到目前为止,一切都很好。我的问题是,相机应用程序完成后,我不会返回到活动 A,而是创建了一个新的活动 A 实例。 预期路径:X --> A --> 相机 --> 相机完成 --> A 与 onActivityResult 中的图像,但在我的情况下:X --> A --> 相机 -- > 摄像头完成 --> onActivityResult 中带有图像的新实例 A'

以上是关于Android:从相机返回后创建新活动,而不是返回到以前的活动的主要内容,如果未能解决你的问题,请参考以下文章

按下“确定”按钮后,Android 相机活动不会返回到我的应用程序

当通过意图从相机应用程序返回时,Android 活动被破坏

从片段返回主页活动而不启动新活动(主页)

从相机捕获图像并将其显示在android的另一个活动中

Android,检查是不是按下了返回按钮

Android 应用返回上一个活动而不是下一个活动