这个以前也有过我。在 iPad 上,如果您指定源类型UIImagePickerControllerSourceTypePhotoLibrary
或者UIImagePickerControllerSourceTypeSavedPhotoAlbum
您需要使用弹出框控制器呈现图像选择器控制器。如果你尝试以模态方式呈现它,就像你正在做的那样,你会得到一个例外。
不是 100% 需要,但使用测试查看可用的源类型也是一个好主意。
[UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]
源类型有:
UIImagePickerControllerSourceTypePhotoLibrary
UIImagePickerControllerSourceTypeSavedPhotosAlbum
UIImagePickerControllerSourceTypeCamera
这就是我解决这个问题以测试它是否是 iPad 的方法。
if( UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){
UIPopoverController* popOverController = [[UIPopoverController alloc] initWithContentViewController:imagePickerController];
[popOverController presentPopoverFromRect:selectVideoToViewButton.bounds inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}else {
[self presentModalViewController:self.imagePickerController animated:YES];
}