我有一个通过 UIStoryboardPopoverSegue 调用的视图控制器,里面有一个调用 imagePickerController 的按钮,第一次调用没问题,但第二次崩溃了。
代码在不通过 UIStoryboardPopoverSegue 时使用是可以的。
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
UIImage *image=[info objectForKey:UIImagePickerControllerOriginalImage];
UIImageWriteToSavedPhotosAlbum (image, nil, nil , nil);
[self dismissViewControllerAnimated:YES completion:nil];
}
-(IBAction)takephoto:(id)sender
{
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
self.imagePicker.delegate=self;
self.imagePicker.sourceType=UIImagePickerControllerSourceTypeCamera;
[self presentViewController:imagePicker animated:YES completion:nil];
}
}
- (void)viewDidLoad
{
[super viewDidLoad];
if (!self.imagePicker)
{
self.imagePicker = [[UIImagePickerController alloc] init];
}
}
我启用了 NSZobmbie 来显示任何可以帮助我跟踪它的日志。
* -[UIImagePickerController isKindOfClass:]:消息发送到释放的实例 0x1eb3b700