Ios 在iPad上锁定方向并禁用旋转
我有以下代码,可以在iPhone上正常工作,但在iPad上不行。它应该锁定横向方向并仅为此viewcontroller禁用自动旋转(不适用于整个应用程序-不更改project/info.plist文件中的属性): 在Ios 在iPad上锁定方向并禁用旋转,ios,swift,ipad,orientation,screen-rotation,Ios,Swift,Ipad,Orientation,Screen Rotation,我有以下代码,可以在iPhone上正常工作,但在iPad上不行。它应该锁定横向方向并仅为此viewcontroller禁用自动旋转(不适用于整个应用程序-不更改project/info.plist文件中的属性): 在viewDidLoad()中: 如何将方向锁定为横向并禁用当前ViewController的旋转(就像它已经在iPhone上完美工作一样) 我的规格: XCode-9.1构建9B55 Swift-4.0.2 在iPadAir-IOS10.3.3上测试,我的问题的答案其实很简单。您必须
viewDidLoad()
中:
如何将方向锁定为横向并禁用当前ViewController的旋转(就像它已经在iPhone上完美工作一样)
我的规格:
XCode-9.1构建9B55
Swift-4.0.2
在iPadAir-IOS10.3.3上测试,我的问题的答案其实很简单。您必须在项目的部署信息中激活需要全屏。在这之后,iPad的行为与iPhone的行为相同,代码如下。这和这可能会对您有所帮助。关于1):正如我所说,这将锁定我的整个应用程序,而不仅仅是将一个viewcontroller锁定到所需的方向。关于2):在我使用此代码的控制器上,我没有任何NavigationController作为父母。令人惊讶的是,你救了我很多小时的生命!
override var shouldAutorotate : Bool {
return false
}
let landscapeValue = UIInterfaceOrientation.landscapeRight.rawValue
UIDevice.current.setValue(landscapeValue, forKey: "orientation")