【发布时间】:2014-11-18 03:09:06
【问题描述】:
这个问题的实际标题比我想象的要长:
在 iPhone 6 Plus 上启动根视图控制器仅支持纵向但在其他情况下支持横向的应用,而主屏幕处于横向时会导致应用程序窗口处于横向但设备处于纵向。
简而言之,它看起来像这样:
什么时候应该是这样的:
复制步骤:
运行 iOS 8.0 的 iPhone 6 Plus。
一个应用程序,其 plist 支持所有但纵向倒置方向。
应用的根视图控制器是一个UITabBarController。
一切,标签栏控制器及其所有后代子视图控制器从
supportedInterfaceOrientations返回UIInterfaceOrientationMaskPortrait。从 iOS 主屏幕开始。
旋转到横向(需要 iPhone 6 Plus)。
冷启动应用程序。
结果:界面方向损坏。
我想不出任何其他方式来强制纵向方向除了完全禁用横向,这是我做不到的:我们的网络浏览器模式视图控制器需要横向。
我什至尝试继承 UITabBarController 并覆盖supportedInterfaceOrientations 以返回仅纵向掩码,但这(即使使用上述所有其他步骤)并没有解决问题。
Here's a link to a sample project showing the bug.
【问题讨论】:
-
您是否向雷达提交了错误?
-
Apple 论坛上的 Justin Miller 建议如下:“您的信息属性列表应指定您愿意允许应用启动的方向(应对应于初始视图控制器支持的方向) )。”
-
我喜欢你提出问题的方式。我想知道如何表达。谢谢你拯救了我的一天。 !!!
标签: ios iphone ios8 uiinterfaceorientation