在Swift中检测UIView的旋转

时间:2016-02-06 20:43:15

标签: ios swift nsnotificationcenter screen-rotation nsnotification

我创建了一个继承自UIView的自定义视图。我真的需要能够在自定义视图类中检测旋转。

我已经在网上搜索并试过了两个:

UIApplicationDidChangeStatusBarOrientationNotification

UIDeviceOrientationDidChangeNotification

我在下面添加了我的init方法,以显示我尝试过的代码。我在视图控制器中尝试了相同的代码,它运行得很好。

override init(frame: CGRect) {

    super.init(frame: frame)

    UIDevice.currentDevice().beginGeneratingDeviceOrientationNotifications()

    NSNotificationCenter.defaultCenter().addObserver(
        self,
        selector: "didRotate:",
        name: UIApplicationDidChangeStatusBarOrientationNotification,
        object: nil)

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

是否还有其他人遇到过类似的问题,如果有的话,您是否找到了解决问题的方法?

0 个答案:

没有答案