我正在使用UIDragInteraction,它工作得很好。
let dragInteraction = UIDragInteraction(delegate: self)
myView.addInteraction(dragInteraction)
dragInteraction.isEnabled = true
按照预期,当我长按我的视图时,拖动开始。我现在想改变这种行为。我不想长按,我想拖动立即开始触摸我的视图和移动我的手指?
我试过用一个pan手势来启动移动,但我不知道如何启动dragInteraction。
let panGesture = UIPanGestureRecognizer(target: self, action: #selector(panAction))
panGesture.minimumNumberOfTouches = 1
panGesture.maximumNumberOfTouches = 1
panGesture.cancelsTouchesInView = false
panGesture.delaysTouchesBegan = false
myView.addGestureRecognizer(panGesture)
请帮忙。谢谢。
最佳答案
在标准的拖放实现中,这在目前看来是不可能的。
不过,您可以降低与minimumPressDuration
相关的UILongPressGestureRecognizer
的UIDragInteraction
。对此的进一步解释可以在以下答案中找到:set minimumPressDuration for UIDragInteraction
此外,您还可以使用手势识别器等实现自己的拖放交互。。这当然可能很乏味,而不是你想要的。