1

2 つの質問があります。

  1. ハンドラーから継承しUISwipeGestureRecognizerてロジックを追加するジェスチャ認識機能を実装できますか?UIEvent

  2. UIGestureRecognizerにアタッチせずに実装できますUIViewか? つまり、イベントを分析および管理しUIEvent、適切なセレクター ( touchesBegantouchesMovedtouchesEnded)を呼び出しtouchesCancelledますか?

それまでの間、状態が のときにジェスチャ認識機能をリセットする際に問題が発生しましたUIGestureRecognizerStateEnded

4

1 に答える 1

1

あなたは尋ねました:

ハンドラーから継承しUISwipeGestureRecognizerてロジックを追加するジェスチャ認識機能を実装できますか?UIEvent

はい。iOSのイベント処理ガイドの「カスタム ジェスチャ レコグナイザーの作成」を参照してください。WWDC 2010 セッション 121 - Advanced Gesture Recognitionも参照してください。ただし、それはおそらく何をしたいかによって異なります。標準のスワイプ ジェスチャとパラメータを構成することで、目的を達成できるかどうかを確認する必要があります。私は のような連続ジェスチャでさらにサブクラス化を行いましたが、スワイプでもそれを実行できない理由はわかりません。directionnumberOfTouchesUIPanGestureRecognizer

UIGestureRecognizerにアタッチせずに実装できますUIViewか? つまり、イベントを分析および管理しUIEvent、適切なセレクター ( touchesBegantouchesMovedtouchesEnded)を呼び出しtouchesCancelledますか?

いいえ。明らかに作成できますが、ビューに追加され、UIViewそのビューがタッチを受け取るまで、イベントを受信しません。

それまでの間、状態が のときにジェスチャ認識機能をリセットする際に問題が発生しましたUIGestureRecognizerStateEnded

その問題を解決するには、関連するコード スニペットを提供する新しい質問を送信する必要があります。UIGestureRecognizerStateEnded一般に、ハンドラが(andUIGestureRecognizerStateCancelledまたは)に対して呼び出されたときにジェスチャ後のクリーンアップをUIGestureRecognizerStateFailed行い、次の を受け取ったときに次のジェスチャのためにすべてを初期化しますUIGestureRecognizerStateBegan

于 2013-02-05T16:34:56.183 に答える