我尝试访问trait集合并检查“forceTouchCapability”,但是“forceTouchCapability”只是检查设备是否为iOS 9.0或更高版本.
所以这意味着在任何具有iOS 9的设备上,强制触摸都是可用的.我需要一种检查用户设备(iPhone 6)实际支持3D触摸的方法,我需要确保在可访问性设置中实际启用了3D Touch选项.
解决方法
我不小心将一个BOOLCapability(将其作为返回值设置为返回一个布尔值)将其强制转换为BOOL.我需要检查forceTouchCapability是否等于UIForceTouchCapabilityAvailable.
代替:
return [[MyView traitCollection] forceTouchCapability];
我需要:
return [[MyView traitCollection] forceTouchCapability] == UIForceTouchCapabilityAvailable;