如何在初始自动旋转后修复主视图的大小?

How can I fix the size of the main view after an initial auto-rotation?

步骤如下:

  1. 为 iPad 创建一个新项目。

  2. 在常规设置中只选择横向右/左。

  3. 将视图的方向更改为情节提要内的横向。

  4. 在 viewDidLoad / Appear 之后记录视图的大小。

虽然,在故事板中,视图设置为 (1024.0, 768.0) 它 logs 相反 (768.0, 1024.0) 就好像视图旋转到横向 在它以横屏模式出现后。

我知道,这很疯狂!

我刚刚创建了一个新的iPad单视图项目,在常规设置中只选择横向左右,将此代码放入控制器中:

override func viewDidLoad() {
    super.viewDidLoad()
    print("ViewDidLoad W: \(UIScreen.mainScreen().bounds.size.width) H: \(UIScreen.mainScreen().bounds.size.height)")
}

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)
    print("ViewDidAppear W: \(UIScreen.mainScreen().bounds.size.width) H: \(UIScreen.mainScreen().bounds.size.height)") 
}

这是我得到的输出:

ViewDidLoad W: 1024.0 H: 768.0
ViewDidAppear W: 1024.0 H: 768.0

在故事板中更改视图控制器方向对输出没有影响。