我正在使用一些 UIGestures(尤其是用力触摸)。我有所有这些工作,额外的 UI 更新/动画都根据强制触摸工作。但是,我想在用力按压时添加触觉反馈。令我沮丧的是,这段代码不起作用。函数被调用,界面更新,但没有触觉反馈。我在这里缺少什么吗?权限、能力等?
@objc func forceTouchHandler(_ sender: ForceTouchGestureRecognizer) {
print("force touch")
UINotificationFeedbackGenerator().notificationOccurred(.success)
self.updateInterface()
}
提前感谢您的任何反馈。
最佳答案
您不需要任何许可即可使用反馈生成器。当您使用麦克风时,它将不起作用。但在其他情况下,一切都应该没问题。尝试在通知之前调用 prepare()
方法。
let generator = UINotificationFeedbackGenerator()
generator.prepare()
generator.notificationOccurred(.success)
关于iOS 触觉反馈不触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52450038/