[经验]iOS app整体是竖屏(横屏),某个页面却支持横竖屏

标签: 横竖屏
2202人阅读 评论(1) 收藏 举报
分类:

一个app 整体上是横屏,即info.plist中设置如下图。但是在某个页面需要支持横屏。通常在进入那个页面的时候会crash。

2016-08-30 17:38:30.224 Video[991:372909] *** Terminating app due to uncaught exception 'UIApplicationInvalidInterfaceOrientation', reason: 'Supported orientations has no common orientation with the application, and [VideoPlayerViewController shouldAutorotate] is returning YES'。


但是,又想对某个页面支持横竖屏。需要在AppDelegate中做如下设置。这里VideoPlayerViewController是需要横屏的页面

- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window {
    VideoPlayerViewController* videoPlayerVC = [VideoPlayerViewController defaultVideoPlayerViewController];
    if (VideoPlayerViewController展示时候){
        return UIInterfaceOrientationMaskLandscape;
    }
    return UIInterfaceOrientationMaskPortrait;
}

或者在application:supportedInterfaceOrientationsForWindow:返回UIInterfaceOrientationMaskAll也行。但是你每个页面都得实现

- (BOOL)shouldAutorotate {
    return YES;
}

2
1

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1075570次
    • 积分:8529
    • 等级:
    • 排名:第2541名
    • 原创:167篇
    • 转载:44篇
    • 译文:16篇
    • 评论:123条
    博客专栏