重现步骤:
运行iOS 8.0的iPhone 6 Plus。
一个支持除倒置竖屏方向以外所有方向的plist的应用程序。
应用程序的根视图控制器是UITabBarController。
所有内容,选项卡控制器及其所有后代子视图控制器都从supportedInterfaceOrientations返回UIInterfaceOrientationMaskPortrait。
从iOS主屏幕开始。
将设备旋转到横向方向(需要iPhone 6 Plus)。
冷启动应用程序。
结果:界面方向错误。
我想不出其他强制使用纵向方向的方法,除非完全禁用横向方向,但这是不可能的:我们的Web浏览器模态视图控制器需要横向方向。
我甚至尝试了子类化UITabBarController并覆盖supportedInterfaceOrientations以返回仅限纵向的掩码,但这(即使使用上述所有步骤)也无法解决问题。