2016-12-11 45 views
1

我目前正在研究一個只能鎖定到縱向模式的移動應用程序。正如我可以在我的項目設置中所做的那樣,這不是問題,但我希望一個Viewcontroller僅以橫向模式顯示。我希望一個ViewController只能以橫向模式顯示

我試圖禁用肖像模式,在項目設置和添加這段代碼到我的橫向視圖控制器(還有一種調用它,但有一個縱向):

let value = UIInterfaceOrientation.landscapeLeft.rawValue 
UIDevice.current.setValue(value, forKey: "orientation") 
UIViewController.attemptRotationToDeviceOrientation() 

的我現在面臨的問題是,這個解決方案不是最優的。用戶仍然能夠旋轉他的設備。我怎樣才能解決這個問題?

+0

我有同樣的問題。我的代碼在iOS 9中完美運行,但是如果他們試圖在iOS 10中開始允許用戶旋轉。 – BennyTheNerd

回答

0

試圖鎖定自動旋轉

override var shouldAutorotate : Bool { 
    // Lock autorotate 
    return false 
} 
0

這iOS10工作之前

viewDidLoad中:

UIDevice.current.setValue(UIInterfaceOrientation.landscapeRight.rawValue, forKey: "orientation") 

也有此在的ViewController:

override var shouldAutorotate : Bool { 
    return true 
} 

override var supportedInterfaceOrientations : UIInterfaceOrientationMask { 
    return UIInterfaceOrientationMask.landscapeRight 
} 

override var preferredInterfaceOrientationForPresentation : UIInterfaceOrientation { 
    return UIInterfaceOrientation.landscapeRight 
} 
相關問題