使用Camera的iPhone导致数组被卸载

时间:2010-06-11 20:09:58

标签: iphone objective-c

我有一个我在UITableView中显示的图像数组。使用UIImagePicker从库中选择图像时,一切都很好,我可以向阵列添加大量图像。只要我使用Picker从相机添加图像,我就会收到内存警告,并且我的图像阵列被丢弃。从相机选取器返回,表视图为空。

使用相机作为源时,UIImagePicker会在我有机会调整图像大小之前生成内存警告。

2 个答案:

答案 0 :(得分:0)

使用Instruments(内置于xcode)来观察你的记忆。我知道ImagePicker存在一些问题,如果没有正确发布则会泄漏。当你的应用抱怨内存时你也应该抓住它。

答案 1 :(得分:0)

您是否在viewDidUnload中发布了图像数组?或者使用setter将其设置为nil?

如果是这样,可能发生的事情是当发生内存警告时您的视图不可见(因为UIImagePicker是顶视图)。操作系统在视图控制器上调用didReceiveMemoryWarning,默认情况下,如果视图不可见,则会卸载视图。卸载视图会调用viewDidUnload。