要在 iOS 开发中监听屏幕旋转,可以使用以下步骤:

  1. 在你的视图控制器中,重写 'viewWillTransition(to:with:)' 方法。这个方法会在屏幕旋转前调用。
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
    super.viewWillTransition(to: size, with: coordinator)
    // 在屏幕旋转前的操作
}
  1. 在 'viewWillTransition(to:with:)' 方法中,你可以执行你想要在屏幕旋转前后进行的操作。例如,根据屏幕方向更新视图布局。
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
    super.viewWillTransition(to: size, with: coordinator)
    
    coordinator.animate(alongsideTransition: { (context) in
        // 在屏幕旋转期间的动画操作
    }) { (context) in
        // 在屏幕旋转完成后的操作
    }
}
  1. 如果你需要知道屏幕旋转的具体方向,你可以通过检查 'UIDevice.current.orientation' 属性来获取当前设备的方向。
switch UIDevice.current.orientation {
case .portrait:
    // 设备处于垂直方向
case .portraitUpsideDown:
    // 设备处于上下颠倒的垂直方向
case .landscapeLeft:
    // 设备处于左横向方向
case .landscapeRight:
    // 设备处于右横向方向
default:
    // 无法确定设备的方向
}

通过上述步骤,你可以监听屏幕旋转并在旋转前后执行相应的操作。

iOS 开发:监听屏幕旋转指南

原文地址: https://www.cveoy.top/t/topic/qmEk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录