ker*_*erd 5 iphone orientation uiinterfaceorientation ios ios9
技术说明TN2244:在横向状态下启动iPhone应用程序:
UISupportedInterfaceOrientations键的值确定应用程序启动时状态栏的位置.在iOS 7及更低版本中,如果存在UIInterfaceOrientationPortrait值,则状态栏将始终定位为纵向.否则,状态栏将根据UISupportedInterfaceOrientations键下显示的第一个方向定位.
因此,在iOS 8中,UIInterfaceOrientationLandscape首先放入UISupportedInterfaceOrientations列表以让您的应用程序在Landscape中启动是完全可以的.
它在iOS 9中不再起作用.UIInterfaceOrientationPortrait在任何位置的列表中强制应用程序以肖像开始.
题
有没有已知的解决方法?我需要我的应用程序从Landscape开始.
注意:使用viewControllers的supportedInterfaceOrientations()方法不是一个选项,因为它在呈现LaunchScreen后生效.
\n\n\n将 UIInterfaceOrientationPortrait 放在列表中的任何位置都会强制应用程序以纵向启动。
\n
这是绝对正确的\xe2\x80\x94 非常好的侦探工作。我做了很多实验才弄清楚这一点!这相对于iOS 8来说无疑是一个巨大的改变。你把情况总结得很好。
\n\n幸运的是,解决方法很简单。在您的Info.plist中,仅包含两个横向方向。现在应用程序将启动到第一个。
\n\n现在application:supportedInterfaceOrientationsForWindow:在应用程序委托中实现以返回全部。这样,当需要显示纵向视图控制器时,这样做就是合法的。
换句话说,将Info.plist视为启动应用程序需要了解的内容,以及正在运行的application:supportedInterfaceOrientationsForWindow:应用程序需要了解的内容。
| 归档时间: |
|
| 查看次数: |
1218 次 |
| 最近记录: |