UIImagePickerView中的异常

时间:2013-02-22 23:03:49

标签: objective-c camera uiimagepickercontroller

我收到此错误:

[CameraViewController presentViewController:animated:completion:]:无法识别的选择器发送到实例0x8e07d0

代码是:

self.view.alpha = 0.5f;
[self.navigationController setNavigationBarHidden:YES];
UIImagePickerController *imagepicker=[[UIImagePickerController alloc]init];
[imagepicker.view setBackgroundColor:[UIColor blackColor]];
imagepicker.delegate=self;
 imagepicker.sourceType=UIImagePickerControllerSourceTypeCamera;
[self presentViewController:imagepicker animated:YES completion:nil];

如果设备中有可用的摄像头,我已经检查过以前的控制器。当我在带有相机的设备上检查它时,就会出现这种情况。

我是否应该在其他地方找到其他的东西' nil'在最后一行?

1 个答案:

答案 0 :(得分:3)

iOS 5.0中添加了UIViewController presentViewController:animated:completion:方法。该错误表示您使用的是早期版本的iOS。在这种情况下,请改用presentModalViewController:animated:。您可以根据需要在运行时使用正确的:

if ([self respondsToSelector:@selector(presentViewController:animated:completion:)]) {
    [self presentViewController:imagepicker animated:YES completion:nil];
} else {
    [self presentModalViewController:imagepicker animated:YES];
}

解除视图控制器的方法也有类似的情况。