3D Touch 在 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 文档,Apple 建议开发人员在委托方法traitCollectionDidChange:读取forceTouchCapability

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

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

希望对您有所帮助。

相关内容

  • 没有找到相关文章

最新更新