我的应用程序旨在以纵向和横向方向工作。 从iOS 8开始,如果设备以横向方向保持,则启动应用程序时会出现问题。用户界面初始化不正确。
我的用户必须关闭应用程序,然后在按住设备的同时重新开始。
如何安排应用程序始终以纵向模式启动而不将其锁定到此模式?在此之后,应允许用户更改为所有四个方向。
在我的视图中,控制器shouldAutorotate返回true,supportedInterfaceOrientations返回all。
答案 0 :(得分:1)
这是一个适用于ios 11的解决方案,我的应用程序支持纵向和横向,但初始视图的标签栏必须始终为纵向。设置方向锁并创建一个应该在didFinishLaunchingWithOptions中执行的实用程序,如下所示:
AppUtility.lockOrientation(.portrait)
func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask {
return self.orientationLock
}
struct AppUtility {
static func lockOrientation(_ orientation: UIInterfaceOrientationMask) {
if let orientationDelegate = UIApplication.shared.delegate as? AppDelegate {
orientationDelegate.orientationLock = orientation
}
}
答案 1 :(得分:-1)
单击项目导航器中的项目名称。然后转到常规和部署选项部分,选择您首选的设备方向