3D触摸在iPhone 6s +上不可用

我正在尝试将3d touch添加到我的应用程序中。 我试图让用户在UITableViewCell上使用强制触摸,就像这个项目中所显示的那样。 我正在运行这个代码:

if traitCollection.forceTouchCapability == UIForceTouchCapability.Available { registerForPreviewingWithDelegate(self, sourceView: view) } else { print("unavailable") } 

我曾尝试在iPhone 6s +上运行它,但在日志中收到“不可用”。 为什么我不能在3D触摸支持的设备上使用3D触摸? 谢谢你的帮助。

刚刚发现了一些关于3D Touch API的参考资料:根据3D Touch API文档,苹果build议开发者在traitCollectionDidChange: delegate方法中读取forceTouchCapability

例如,您可以使用以下命令检查视图控制器中的值:

 override func traitCollectionDidChange(previousTraitCollection: UITraitCollection?) { super.traitCollectionDidChange(previousTraitCollection) switch traitCollection.forceTouchCapability { case .Available: print("Available") case .Unavailable: print("Unavailable") case .Unknown: print("Unknown") } } 

希望能帮助到你。

Interesting Posts