保持活动属性onActivityResult

时间:2013-10-14 12:12:57

标签: android

所以我正在研究几个Android相机示例,其中我

  1. 生成文件URI并将其设置为类属性
  2. 然后调用相机意图传递文件URI作为参数
  3. 处理onActivityResult,然后通过从文件URI
  4. 加载文件来显示保存的图像

    我的问题是:处理OnActivityResult时,文件URI属性为null,即使它是在调用相机意图之前设置的。我实现了onSaveInstanceState()方法并将属性保存到bundle中,然后加载它onCreate - 这似乎解决了问题。但是,这意味着我的活动onCreate在onActivityResult之前或之后被调用,我的属性被重置。

    由于官方的Android示例没有实现onSaveInstanceState来保留该文件的uri变量,我做错了吗?从相机意图触发onCreate时,在原始活动上调用onActivityResult是否正常?我是否必须将活动设置为singleTop或类似的内容?

1 个答案:

答案 0 :(得分:0)

在我的情况下,当从相机返回时没有调用onCreate,因此文件(或uri)仍然很好......

我只能想到两种或三种可能性:你自己手动调用完成,或者你正在测试的设备/模拟器内存​​不足并且一旦凸轮处于前台或你有一些任务就会杀死你的活动您的设备上杀死您的活动的杀手......?

所以,onCreate不是,至少不是总是被调用,如果你想知道,如果你做错了,我想有必要发布你的代码。 (尽管像你一样处理问题似乎是一个好主意),