我正在嘗試使用平移手勢識別器爲我的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
一面旗子似乎是一條合理的路。 –