有没有办法调整在集合视图单元格上开始拖动所需的时间?如同UILongPressGestureRecognizer
minimumPressDuration
财产。
我知道我们可以迭代附加到视图的所有手势识别器,并可能找到我们需要的手势识别器。但这种方法感觉并不可靠。
由于没有更好的解决方案,我仍然使用“迭代手势识别器”方法。
代码如下:
gestureRecognizers?.forEach { (recognizer) in
if let longPressRecognizer = recognizer as? UILongPressGestureRecognizer {
longPressRecognizer.minimumPressDuration = Constants.DragLongPressMinimumDuration
}
}
Constants.DragLongPressMinimumDuration
is Double
定义于Constants
struct.
重要的提示:设置拖放后,在集合视图本身(而不是单元格)上执行此操作。
该解决方案适用于 iOS 版本 11 和 12。
当然,这是在使用私有 API 的边缘,该识别器的实际类是_UIDragLiftGestureRecognizer
(这是私有 API 的一部分,并且UILongPressGestureRecognizer
子类)。但既然我们要把它投射到UILongPressGestureRecognizer
,从技术上讲,我们没有使用私有 API。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)