我有一段看似没有错误的代码,但是重写是 没有发生,我无法检测到设备运动
let motion = CMMotionManager()
//start override
override func viewDidLoad() {
super.viewDidLoad()
//check is motion is active
if motion.isDeviceMotionActive {
//setting interval
motion.deviceMotionUpdateInterval = 0.01
//starting updates
motion.startDeviceMotionUpdates(to: .main) {
[weak self] (data, error) in
guard let data = data, error == nil else {
return
}
let rotation = data.gravity.y
self!.yAccel.text = "Accel = \(Double(rotation))"
}
}
}
我应该期望覆盖函数能够一致地重新加载数据并将数据保存到指定变量
答案 0 :(得分:0)
我可以猜到你错了。 应该有
if motion.isAccelerometerAvailable {
代替:
if motion.isDeviceMotionActive {