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

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

【问题讨论】:

标签: android android-activity camera instance


【解决方案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'
    猜你喜欢
    • 1970-01-01
    • 2011-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多