如何从代码中阻止横向位置,为每个视图控制器进行分离?

时间:2015-05-27 08:20:37

标签: ios swift appdelegate landscape-portrait

我知道我可以在目标菜单中选择我的应用的可用方向,但我想阻止每个屏幕的横向方向,除了使用youtube播放器的方向。

我认为这不能通过app委托来完成,因为它不会区分控制器并为整个应用程序应用规则。

我怀疑也许有办法通过sharedApplication()做到这一点,但不知道如何做。

你知道如何做到这一点吗?

2 个答案:

答案 0 :(得分:1)

在要阻止的每个VC override func.LandscapeLeft

中使用此.LandscapeRight
override func supportedInterfaceOrientations() -> Int {
    return Int(UIInterfaceOrientationMask.Portrait.rawValue) | Int(UIInterfaceOrientationMask.PortraitUpsideDown.rawValue)
}

答案 1 :(得分:1)

将此添加到您希望设置为仅限肖像的UIViewController类。

override func supportedInterfaceOrientations() -> Int {
  return Int(UIInterfaceOrientationMask.Portrait.rawValue)
}

如果您没有更改目标中的任何设置,则没有此设置的其他屏幕应该能够正确旋转。