ViewController 鎖定豎屏,但需感知用戶旋轉手機以觸發特定邏輯(如切換全屏播放器)。
import CoreMotion
let motionManager = CMMotionManager()
motionManager.accelerometerUpdateInterval = 0.2
motionManager.startAccelerometerUpdates(to: .main) { data, error in
guard let acceleration = data?.acceleration else { return }
// 簡單判斷:x 軸絕對值大於 y 軸 → 橫屏
let isLandscape = abs(acceleration.x) > abs(acceleration.y)
// 觸發業務邏輯
}
注意:需在 Info.plist 添加 NSMotionUsageDescription 說明。