iPad 问题中未显示 UIImagePickerController
Posted
技术标签:
【中文标题】iPad 问题中未显示 UIImagePickerController【英文标题】:UIImagePickerController not presented in iPad issue 【发布时间】:2013-11-26 11:52:56 【问题描述】:我正在尝试展示 UIImagepickerController 以打开图片库。它在 iPhone 中工作正常,但在 iPad 应用程序中崩溃并出现以下错误 “支持的方向与应用程序没有共同的方向,并且 shouldAutorotate 正在返回 YES”强>”
P.S:我的应用将仅在 iPhone 中支持纵向。 iPad 中的横向显示。有解决此问题的建议吗?
【问题讨论】:
【参考方案1】:"在 iPad 上,UIImagePickerController 必须通过 UIPopoverController 呈现" 对于 iPad,您应该在 UIPopoverController 中呈现它,而不是使用直接呈现。这应该可以解决问题。
为 UIPopoverController 添加一个强属性
@property (nonatomic, strong) UIPopoverController *popOver;
应该在委托方法中关闭弹出框:
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
比在你的 .m 文件中写下面的代码。
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:picker];
[popover presentPopoverFromRect:self.selectedImageView.bounds inView:self.selectedImageView permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
self.popOver = popover;
else
[self presentModalViewController:picker animated:YES];
【讨论】:
以上是关于iPad 问题中未显示 UIImagePickerController的主要内容,如果未能解决你的问题,请参考以下文章
iPad 问题:使用 UIImagePicker 从视频文件夹中选择视频
iPad 问题中未显示 UIImagePickerController