1

我有一个 UIImagePickerController 作为我的视图控制器的综合属性。

一般来说,它工作正常(拍摄/挑选照片,回电等)。但是,当我收到内存警告时(在视图控制器上调用了didReceiveMemoryWarning),尽管应用程序似乎可以优雅地处理它(viewDidLoad 被调用以重新设置视图而没有任何无关的视图等 - 应用程序不会崩溃) UIImagePickerController 让我拍照,UIImagePickerController 的视图(在本例中为相机)不会被关闭。相机只是停留在屏幕上,重拍和使用按钮灰显。

我已经尝试在 viewDidUnload 中设置 self.imagePicker = nil 并且也尝试过不这样做(因此视图控制器在内存警告后需要将其关闭时并没有“忘记”它)。

内存警告后拍照后,imagePicker确实回调成功(didFinishPickingMediaWithInfo),但imagePicker视图仍然在屏幕上。

任何帮助/想法将不胜感激。

4

1 回答 1

3

非常感谢 Kalle 的评论,基本上解决了这个问题。

答案是我不仅需要确保 imagePicker 在 vi​​ewDidUnload 中没有被设置为 nil,而且我还需要在 didReceiveMemoryWarning 中删除/关闭它。当你知道答案时就这么简单 - 哦!;o)

再次感谢 StackOverflow。

于 2010-07-02T12:30:17.023 回答