检测碰撞运动
Detecting bump motion
我正在尝试检测 iPhone 的整个左侧何时被碰撞。这是我目前拥有的:
let manager = CMMotionManager()
override func viewDidLoad() {
super.viewDidLoad()
if manager.deviceMotionAvailable {
manager.deviceMotionUpdateInterval = 0.02
manager.startDeviceMotionUpdatesToQueue(NSOperationQueue.mainQueue()) {
[weak self] (data: CMDeviceMotion!, error: NSError!) in
if data.userAcceleration.x > 2 {
// Perform action
}
}
}
}
只要我碰到 phone 的左上角,上面的代码就可以工作。但是,如果我尝试将整个 phone 直接撞到左边的一条直线上,它很少奏效。我在这里遗漏了什么吗?
谢谢!
if data.userAcceleration.x > 2 {
// Perform action
}
做 2,比如 1.5 或更小,因为 2 需要非常快的加速度。
我正在尝试检测 iPhone 的整个左侧何时被碰撞。这是我目前拥有的:
let manager = CMMotionManager()
override func viewDidLoad() {
super.viewDidLoad()
if manager.deviceMotionAvailable {
manager.deviceMotionUpdateInterval = 0.02
manager.startDeviceMotionUpdatesToQueue(NSOperationQueue.mainQueue()) {
[weak self] (data: CMDeviceMotion!, error: NSError!) in
if data.userAcceleration.x > 2 {
// Perform action
}
}
}
}
只要我碰到 phone 的左上角,上面的代码就可以工作。但是,如果我尝试将整个 phone 直接撞到左边的一条直线上,它很少奏效。我在这里遗漏了什么吗?
谢谢!
if data.userAcceleration.x > 2 {
// Perform action
}
做 2,比如 1.5 或更小,因为 2 需要非常快的加速度。