【问题标题】:How can I fix the size of the main view after an initial auto-rotation?如何在初始自动旋转后修复主视图的大小?
【发布时间】:2015-12-31 13:57:40
【问题描述】:

步骤如下:

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

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

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

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

虽然,在情节提要中,视图设置为 (1024.0, 768.0) 它记录相反的(768.0、1024.0),好像视图旋转到横向 在它以横向模式出现之后。

我知道,这很疯狂!

【问题讨论】:

    标签: ios objective-c ipad uiinterfaceorientation


    【解决方案1】:

    我刚刚新建了一个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
    

    在情节提要中更改视图控制器方向对输出没有影响。

    【讨论】:

    • 感谢您的回复,但我创建了一个位于主视图顶部的新视图,作为处理整个应用程序界面的新类的主视图。像 animator.view 这样的东西。效果很好!
    猜你喜欢
    • 2012-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-06
    • 1970-01-01
    相关资源
    最近更新 更多