回答
添加下面的代码片段在AppDelegate
:
override func motionBegan(motion: UIEventSubtype, withEvent event: UIEvent?) {
if motion == .MotionShake {
print("Device shaken")
}
}
雨燕3.0的版本:
override func motionBegan(_ motion: UIEventSubtype, with event: UIEvent?) {
if motion == .motionShake {
print("Device shaken")
}
}
这没有奏效,因为应用程序委托不在响应者链中。 – phatmann
不能在swift3中工作 –
@SaRaVaNaNDM,当然它只是测试它,并已经过测试。你有没有得到任何错误?你是如何实现它的? –
如果你想在全球范围内检测震动的运动中,一个UIWindow实现UIResponder可以接收震运动事件。您可以添加以下代码段的appdelegate
extension UIWindow {
open override func motionEnded(_ motion: UIEventSubtype, with event: UIEvent?) {
if motion == .motionShake {
print("Device shaken")
}
}
}
这对我有用。只要添加它(没有UIWindow扩展),当我将它放入应用程序委托中时不起作用。必须在iOS 10.3/Xcode8.3的func前添加“open”。 –
很奇怪,motionBegan被调用,但motionEnded不会。 – User9527
- 1. 在Android中检测抖动
- 2. 8秒检测抖动
- 3. 目标C:检测抖动
- 4. 如何检测抖动运动在iPhone
- 5. iOS 5检测重复/连续抖动
- 6. 尝试检测抖动时出现NullPointerException
- 7. 在iOS Safari中使用Javascript检测抖动?
- 8. 了解PCR抖动测量
- 9. 存在相机抖动时进行基准标记检测
- 10. 检测系统负载,重点是Linux中的“交换抖动”
- 11. 使用可拖动的交互时检测抖动
- 12. 抖动与有序抖动
- 13. 在VewGroup中放大抖动
- 14. 如何检测图形是否会抖动?
- 15. RecyclerView在滚动时抖动
- 16. 离子2 - 检测抖动设备时,应用程序在后台模式
- 17. JQuery抖动动画
- 18. jQuery动画抖动
- 19. 图像抖动
- 20. 开始抖动
- 21. CoreAnimation抖动
- 22. UIPickerView抖动
- 23. 双色抖动
- 24. 的QGraphicsItem碰撞抖动/发抖
- 25. 检测在UINavigationBar中滑动
- 26. Wireshark中的抖动计算
- 27. 在Java中实现去抖动
- 28. 在反应es6中实现去抖动
- 29. 鼠标在XNA屏幕中间抖动
- 30. MKMapView setCenterCoordinate在Southern Hempisphere中添加抖动
的可能的复制[当有人动摇的iPhone如何检测?(http://stackoverflow.com/questions/150446/how-do-i-detect-当别人摇一摇一个iPhone) – fishinear