3d Touch 在 iPhone 6s+ 上不可用
3d Touch Not Available on iPhone 6s+
我正在尝试将 3d touch 添加到我的应用程序中。我正在尝试使用户能够在 UITableViewCell 上使用强制触摸,如 this project 中所示。我是运行这个代码:
if traitCollection.forceTouchCapability == UIForceTouchCapability.Available {
registerForPreviewingWithDelegate(self, sourceView: view)
} else {
print("unavailable")
}
我已经在 iPhone 6s+ 上尝试过 运行,但我在日志中收到 "unavailable"。为什么我不能在支持 3d touch 的设备上使用 3d touch?感谢您的帮助。
刚刚找到一些关于 3D Touch API 的参考资料:根据 3D Touch APIs 文档,Apple 建议开发者阅读 forceTouchCapability
中的 traitCollectionDidChange:
委托方法。
例如,您可以使用以下方法检查视图控制器中的值:
override func traitCollectionDidChange(previousTraitCollection: UITraitCollection?) {
super.traitCollectionDidChange(previousTraitCollection)
switch traitCollection.forceTouchCapability {
case .Available:
print("Available")
case .Unavailable:
print("Unavailable")
case .Unknown:
print("Unknown")
}
}
希望对您有所帮助。
我正在尝试将 3d touch 添加到我的应用程序中。我正在尝试使用户能够在 UITableViewCell 上使用强制触摸,如 this project 中所示。我是运行这个代码:
if traitCollection.forceTouchCapability == UIForceTouchCapability.Available {
registerForPreviewingWithDelegate(self, sourceView: view)
} else {
print("unavailable")
}
我已经在 iPhone 6s+ 上尝试过 运行,但我在日志中收到 "unavailable"。为什么我不能在支持 3d touch 的设备上使用 3d touch?感谢您的帮助。
刚刚找到一些关于 3D Touch API 的参考资料:根据 3D Touch APIs 文档,Apple 建议开发者阅读 forceTouchCapability
中的 traitCollectionDidChange:
委托方法。
例如,您可以使用以下方法检查视图控制器中的值:
override func traitCollectionDidChange(previousTraitCollection: UITraitCollection?) {
super.traitCollectionDidChange(previousTraitCollection)
switch traitCollection.forceTouchCapability {
case .Available:
print("Available")
case .Unavailable:
print("Unavailable")
case .Unknown:
print("Unknown")
}
}
希望对您有所帮助。