解决[PUUIAlbumListViewController shouldAutorotate] is returning YES

参考:http://stackoverflow.com/questions/28134138/how-to-present-uiimagepickercontroller-or-open-the-camera-in-a-landscape-only-ap

使用UIImagePickerController并在应用Info.plist只开启横屏的情况下会抛出异常:

*** Terminating app due to uncaught exception'UIApplicationInvalidInterfaceOrientation', reason: 'Supportedorientations has no common orientation with the application, and[PUUIAlbumListViewController shouldAutorotate] is returningYES'

解决方案:
1、在AppDelegate中加入以下代码:

-(UIInterfaceOrientationMa sk)application:(UIApplication *)application supportedInterfaceOrient ationsForWindow:(UIWindow *)window
{
      if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhon e)
            return UIInterfaceOrientationMa skAll;
      else  
            return UIInterfaceOrientationMa skAllButUpsideDown;
}

2、在显示 UIImagePickerController的位置不要使用推出的方式,改为addSubView的方式:

[self.view addSubview:imPickerController.view];

ps:如果一定要使用推出的方式,会导致推出 UIImagePickerController后再返回到原来的ViewController会旋转(竖屏、横屏均可),那么可以在该ViewController中添加下面代码解决:

- (BOOL)shouldAutorotate
{
      return NO;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值