【问题标题】:How to adjust the orientation of UIViewControllerWrapperView (in IOS7)?如何调整 UIViewControllerWrapperView 的方向(在 IOS7 中)?
【发布时间】:2013-11-23 13:08:45
【问题描述】:

背景:该应用程序是一个 iPad 应用程序,仅在横向运行。在将应用程序升级到 Xcode 5 并在 IOS7 模拟器中运行时,我注意到屏幕右侧的一些按钮没有完全激活。即按钮左侧只有一小部分是可点击的。

观察: 在 IOS6 和 IOS7 模拟器中运行相同的源代码,并使用 REVEAL 工具查看视图层次结构,我可以看到 UIViewControllerWrapperView(我的顶级视图的父级)的尺寸controller) 对于 IOS6 (1024x768) 是横向的,但对于 IOS7 是纵向的。

我正在尝试找到一种方法将 UIViewControllerWrapperView 的框架设置为正确的尺寸。在视图控制器的 viewDidLoad 方法中,我尝试获取对 self.view.superview 的引用,但它返回 nil。

谁能解释一下; a) 为什么 UIViewControllerWrapperView 的框架在 IOS7 而不是 IOS6 中运行时的方向错误,更重要的是 b) 如何使其正确?

【问题讨论】:

    标签: uiviewcontroller ios7 orientation


    【解决方案1】:

    您使用的是 UITabBarController 吗?我们遇到了完全相同相同的问题,并通过在 UITabBarController 上添加它来使其正常工作:

    - (void)viewDidLayoutSubviews
    {
        // fix for iOS7 bug in UITabBarController
        self.selectedViewController.view.superview.frame = self.view.bounds;
    }
    

    为什么? check this answer

    【讨论】:

    • 谢谢。我们有一个仍在 iOS 7.0.1 上的 QA 实验室 iPad,出于某种原因,我们觉得这个问题需要解决。嘎!
    猜你喜欢
    • 1970-01-01
    • 2013-08-07
    • 2012-08-04
    • 1970-01-01
    • 1970-01-01
    • 2011-02-22
    • 1970-01-01
    • 1970-01-01
    • 2014-07-13
    相关资源
    最近更新 更多