在使用下面的代码在相机模式下呈现 UIImagePickerController 时,Xcode 5 内存视图显示我的应用程序消耗了大约 20 MB。当我展示控制器时,我在覆盖的 didReceiveMemoryWarning 中收到内存警告。但即使没有机会释放其中的任何资源,应用程序也会崩溃而不会留下任何日志消息。我在 iPhone 4S 中运行代码。我看到其他类似的问题,但症状与我的略有不同,我没有看到任何明确的答案可以解决我的问题。相同的代码在 iOS 6 中或当我在照片库模式下显示控制器时不会导致问题。我的具体问题是:
在相机模式下显示 UIImagePickerController 时出现大约 20 MB 内存使用量的内存警告是否正常?
在呈现 UIImagePickerController 之前,我是否应该通过进一步降低内存消耗来解决这个问题?
===
- (IBAction)cameraClicked:(id)sender
{
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.navigationBarHidden = YES;
imagePicker.toolbarHidden = YES;
imagePicker.allowsEditing = NO;
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentViewController:imagePicker animated:YES completion:nil];
}