强制一个视图控制器只为横向

Posted

技术标签:

【中文标题】强制一个视图控制器只为横向【英文标题】:Force one viewcontroller to be only landscape 【发布时间】:2016-05-08 16:15:52 【问题描述】:

在我的 swift 项目中,我的所有视图控制器都只能是纵向的,我希望只有 1 个视图控制器是横向的

我的设置here

【问题讨论】:

【参考方案1】:

为此,您必须在每个视图控制器中设置纵向和横向的设置以及以下所有代码,除非您需要横向视图

override func shouldAutorotate() -> Bool 
    return false


override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask 
    return UIInterfaceOrientationMask.Portrait

如需进一步帮助,请查看here

【讨论】:

shouldAutorotate 和supportedInterfaceOrientations 不会被触发:( 看看这个。 ***.com/questions/32535329/… 我读过一篇文章,我需要添加 UINavigationController 的扩展来覆盖 shouldAutorotate 和supportedInterfaceOrientations,它适用于导航后的第一个视图控制器,但其他没有

以上是关于强制一个视图控制器只为横向的主要内容,如果未能解决你的问题,请参考以下文章

在 UITabBarController 的横向强制特定视图控制器

iOS 6 中的模态视图控制器强制横向方向

在一个模式视图控制器上强制 iOS 方向为横向

在 Objective-C 中的 iOS 6 上强制横向方向

强制视图仅支持横向模式

IOS 6强制设备方向为横向