在iOS 8/9中根据设备方向更改Viewcontroller

时间:2015-07-16 16:44:35

标签: ios xcode swift ios8 segue

在iOS 8/9中基于设备方向在两个视图控制器之间进行区分的首选方法是什么?我想建立一个横向展示的乐器。在肖像中,我想显示应用程序的设置。

1 个答案:

答案 0 :(得分:1)

在" didFinishLaunchingWithOptions"内的AppDelegate.swift中功能我把:

NSNotificationCenter.defaultCenter().addObserver(self, selector: "rotated", name: UIDeviceOrientationDidChangeNotification, object: nil)

然后在AppDelegate类中,放入以下函数:

func rotated(){
    if(UIDeviceOrientationIsLandscape(UIDevice.currentDevice().orientation){            
        println("landscape")
    }

    if(UIDeviceOrientationIsPortrait(UIDevice.currentDevice().orientation)){
        println("Portrait")
    }
}

或者你可以使用它:

override func viewWillTransitionToSize(size: CGSize, withTransitionCoordinator coordinator: UIViewControllerTransitionCoordinator) {
    if UIDevice.currentDevice().orientation.isLandscape.boolValue {
        println("landscape")
    } else {
        println("portraight")
    }
}