iOS 触觉反馈不触发

标签 ios swift haptic-feedback

我正在使用一些 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/

相关文章:

ios - 有没有办法通过代码创建大于或等于关系的约束

ios - 如何在播放实况照片时禁用触觉反馈

ios - 不使用 UILocalNotification 发出警报

swift - 多个 SKSpriteNode?

ios - Swift 1.2 UICollectionViewController if 语句与 UICollectionViewCell Image

arrays - 快速将字符串更改为变量

ios - audiokit 停止触觉反馈

SwiftUI 菜单 - 菜单实际打开时的操作

cocoa-touch - CAAnimation跟踪进度

ios - UIButton不可触摸