0

パンジェスチャ認識機能を使用してUIViewのドラッグアンドドロップUIを実装しようとしています。私はそのコードを使用していますが、今はドラッグ・アンド・ドロップ・ロジックを実行するのは、ユーザーがドラッグ・ビューを長押しした後だけです。パンジェスチャ認識機能を実行するのは、長押し認識機能が起動した後のみです

私は以下の質問 Recognize long press and pan gesture recognizers togetherのコードを実装していますが、それは私が欲しいものではありません。何か案が?

答えて

0

パンジェスチャ認識機能のデリゲートとしてビューコントローラを設定します。

gestureRecognizerShouldBegin(_:)メソッドを実装します。長押しのジェスチャ認識機能が起動するまでfalseを返します。

+0

長いプレスジェスチャーが開始されているかどうかをVCのどこかのフラグで保持していますか?それとも良い方法がありますか? – 7ball

+0

旗は妥当な方法のようです。 –

0

タイトルが少し誤解を招くような別の投稿を見つけましたので、最初はそれほど多くは見ていませんでした。 Combine longpress gesture and drag gesture together

UILongPressGestureは既に私が望むドラッグアンドドロップ効果を達成するのに役立ちます。それは私がUIPanGestureを全く必要としないことを意味します。長押しのジェスチャーのパンジェスチャーにセレクター/ハンドラーを使用しました。長押しジェスチャがtranslation性質を持っていないので、私は同じドラッグの効果を達成するために

myView.center = sender.location(in: myView.superview) 

を使用する場合を除き。

関連する問題