我正在尝试使用平移手势识别器为我的UIView实现拖放UI。我有这段代码工作,但现在我只想在用户长时间按下我要拖动的视图后才执行拖放逻辑。仅在长按识别器发射后才执行平移手势识别器
我在下面的问题中实现代码 Recognize long press and pan gesture recognizers together但它不完全是我想要的。任何想法?
我正在尝试使用平移手势识别器为我的UIView实现拖放UI。我有这段代码工作,但现在我只想在用户长时间按下我要拖动的视图后才执行拖放逻辑。仅在长按识别器发射后才执行平移手势识别器
我在下面的问题中实现代码 Recognize long press and pan gesture recognizers together但它不完全是我想要的。任何想法?
将您的视图控制器设置为平移手势识别器的代表。
执行gestureRecognizerShouldBegin(_:)
方法。直到长按手势识别器触发后才返回false。
发现另一个帖子,其标题有点误导,所以我没有看到它第一次太多。 Combine longpress gesture and drag gesture together
原来,UILongPressGesture
已经可以帮我达到我想要的拖放效果。这意味着我根本不需要UIPanGesture
。我只是使用了长按手势的平移手势的选择器/处理程序。除长按手势不具备translation
性质,所以我用
myView.center = sender.location(in: myView.superview)
来达到同样的拖曳效应。
我只是在我的VC的某个地方留下一面旗帜,看看长按手势是否已经开始?或者,还有更好的方法? – 7ball
一面旗子似乎是一条合理的路。 –