当我进入相机 UIImagePickerController 时,有时会收到一条内存警告消息,但我不知道如何解决这个问题。
这是我的代码:
-(IBAction)addImageCamera:(id)sender
{
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
pickerImgCamera.sourceType = UIImagePickerControllerSourceTypeCamera;
cameraView.image=[img imageFromMainBundleFile:@"frameCam.png"];
pickerImgCamera.cameraOverlayView=cameraView;
[self.navigationController presentModalViewController:pickerImgCamera animated:NO];
}
else
{
UIAlertView*alert=[[UIAlertView alloc] initWithTitle:@"Oops" message:@"Camera not found" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
alert=nil;
}
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
if (picker.sourceType == UIImagePickerControllerSourceTypeCamera)
{
[self dismissModalViewControllerAnimated:YES];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
});
}
[photoImage setImage:image];
}
注意:内存警告出现在 iphone 和 ipad 中。