为 UITableViewCell 中的 UIButton 禁用 3D 触摸

Disable 3D touch for UIButton in UITableViewCell

我有一个 UITableView 和自定义 UITableViewCells。在我有一个 UIButton 的单元格中,我不想被单元格的 3D 触摸事件触发。

我希望它的工作方式与 Apple messages 应用程序 中的类似,如果你看一下它的工作方式,如果你按 thumbnail 对于消息 sender image (或缩写),当您按下整个单元格时,您会看到不同的 peek & pop。唯一的区别是 我想完全忽略按钮的 peek & pop。那里有人知道解决这个问题的好方法吗?

提前谢谢你。

创建一个 UIView 并使用 UITapGestureRecognizer 和自定义强制触摸手势识别器,例如 this DeepPressGestureRecognizer。以 DeepPressGestureRecognizer 阻止 UITapGestureRecognizer 识别的方式设置手势识别器。

我通过添加覆盖整个 UITableViewCellUIButton 解决了这个问题,然后对于 UIButton 我不想被触发我创建了一个单独的 UIView我在 3D touch 上放置了清晰的背景触发 UIButton

这为整个 UITableViewCell 创建了一个 3D 触摸动画,看起来非常漂亮。