2016-12-15 64 views
3

我在iPhone 6 plus和iPad Pro上運行相同的代碼,並且它們的反應方式不同。 函數被調用當設備方向的變化,然後我只是印刷用下面的代碼視圖的寬度:iPhone和iPad之間的不同行爲

override func viewDidLoad(){ 
    super.vewDidLoad() 
    NotificationCenter.default.addObserver(self, selector: #selector(MyClass.rotated), name: NSNotification.Name.UIDeviceOrientationDidChange, object: nil) 
} 
func rotated(){ 
    print(self.view.bounds.width) 
} 

在iPhone上我得到的寬度旋轉之後,但在iPad上我得到的寬度輪換之前。 感謝您的幫助!

+0

提供更多的上下文。發佈包含此打印行的整個方法。 – rmaddy

+0

您應該查看調用'traitCollectionDidChange(_ :)'方法,以及其他情況下,當設備旋轉時。 – rmaddy

回答

3

你可以嘗試獲取在視圖控制器功能寬度:

func viewDidLayoutSubviews()

讓我知道,如果這有助於!

+0

是的,它的作品!謝謝 – AW5

相關問題