我只使用简单的代码从相机拍照,但是当我使用以下代码打开相机时,我收到收到内存警告,拍照后,应用程序崩溃了。有什么解决方案吗?
在iPhone4s和os 7.1中会出现此问题。
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.showsCameraControls = YES;
[self presentViewController:imagePicker animated:YES completion:nil];
}
答案 0 :(得分:1)
imagePicker本身不是问题。是的,它在拍照时确实会占用大量内存,但几乎不会减少。
您在应用的其他部分浪费/使用内存。
没有'做到这样,它会起作用':
要做的三件事: 1.验证所有对象在不再需要时确实已取消分配。 (Id使用工具分配工具)
请参阅您使用的内容,以及相机崩溃的大量内存。 (也可以使用乐器看到)
您应该在VC中实现didReceiveMemoryWarning
方法,并在消息出现时尽量释放尽可能多的内存。 (您可以轻松重新加载的数据!)