我有一个很奇怪的现象:
- 在iOS 5中我介绍
UIImagePickerController
这样:
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.modalPresentationStyle = UIModalPresentationFullScreen;
imagePicker.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:imagePicker animated:YES];
现在在iOS 6的这个产生崩溃。 我写一个类解决了崩溃UIImagePickerController
:
@implementation UIImagePickerController (NonRotating)
- (BOOL)shouldAutorotate
{
return NO;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
return UIInterfaceOrientationMaskPortrait;
}
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskAll;
}
@end
问题是,现在UIImagePickerController
不旋转,它的显示上侧。 此外,当我按下“取消”按钮,选择器被驳回,应用程序崩溃一次。
- 如果我使用
UIImagePickerController
一个内部UIPopoverController
,一切工作正常(属于事实酥料饼不旋转),但是当我驳回酥料饼在我的应用视图控制器停止响应旋转事件和这个原因,所有的应用程序被阻止在这个方向。 要还原正确的行为,我需要退出从后台应用程序,然后再次打开。
这是我使用的显示酥料饼的代码
_cameraPopoverController = [[UIPopoverController alloc] initWithContentViewController:imagePicker];
[_cameraPopoverController presentPopoverFromRect:_takeFromCamera.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
这个问题让我疯狂!