【问题标题】:Lock orientation and disable rotation on iPad在 iPad 上锁定方向并禁用旋转
【发布时间】:2018-07-03 13:52:36
【问题描述】:

我有以下代码在 iPhone 上运行良好,但在 iPad 上却不行。它应该锁定横向方向并仅针对此视图控制器禁用自动旋转(不适用于整个应用程序 - 不更改 project/info.plist 文件中的属性):

override var shouldAutorotate : Bool {
        return false
}

viewDidLoad():

let landscapeValue = UIInterfaceOrientation.landscapeRight.rawValue
UIDevice.current.setValue(landscapeValue, forKey: "orientation")

如何将当前 ViewController 的方向锁定为横向并禁用旋转(就像它已经在 iPhone 上完美运行一样)?

我的规格:

XCode - 9.1 构建 9B55

斯威夫特 - 4.0.2

在 iPad Air - iOS 10.3.3 上测试

【问题讨论】:

  • 这个answer 和这个answer 可能会对你有所帮助。
  • 关于 1):正如我所说,这将锁定我的整个应用程序,而不仅仅是一个视图控制器到所需的方向。关于 2):我在使用此代码的控制器上没有任何 NavigationController 作为父级。

标签: ios swift ipad orientation screen-rotation


【解决方案1】:

我的问题的答案其实很简单。您必须在项目的部署信息中激活需要全屏。之后,iPad 的行为与使用此代码的 iPhone 相同。

【讨论】:

  • 太棒了,你救了我好几个小时!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-01-23
  • 1970-01-01
  • 1970-01-01
  • 2012-01-15
  • 2011-05-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多