UITextView の組み込みプロパティであると思われる UITextTapRecognizer を無効にしたいと考えています。これは、実装したいタップジェスチャ認識機能に干渉していると思われるためです。どうすればこれを行うことができますか?
読んでくれてありがとう!
UITextView の組み込みプロパティであると思われる UITextTapRecognizer を無効にしたいと考えています。これは、実装したいタップジェスチャ認識機能に干渉していると思われるためです。どうすればこれを行うことができますか?
読んでくれてありがとう!
これがあなたの質問に直接答えるかどうかはわかりませんが(つまり、「UITextTapRecognizerを無効にする」)、役立つと思います。そのtapRecognizerがジェスチャーを認識しないようにすることで、基本的にそれを「無効にする」ことができます(私は思います)。
「ジェスチャ認識エンジンが特定のタッチを見たり、ジェスチャを認識したりするのを防ぐことができます。委譲メソッドまたは UIGestureRecognizer クラスで宣言されたメソッドのオーバーライドを使用して、これらの「防止」関係を指定できます。
UIGestureRecognizerDelegate プロトコルは、特定のジェスチャ レコグナイザーがケースバイケースでジェスチャを認識できないようにする 2 つのオプション メソッドを宣言します。」
gestureRecognizerShouldBegin:
またはgestureRecognizer:shouldReceiveTouch:
デリゲート プロトコル メソッドを試してください。
「さらに、これらの委任メソッドと同じ動作を行う 2 つの UIGestureRecognizer メソッド (UIGestureRecognizerSubclass.h で宣言) があります。サブクラスはこれらのメソッドをオーバーライドして、クラス全体の防止ルールを定義できます。」
見る:
- (BOOL)canPreventGestureRecognizer:(UIGestureRecognizer *)preventedGestureRecognizer;
- (BOOL)canBePreventedByGestureRecognizer:(UIGestureRecognizer *)preventingGestureRecognizer;
ソース: Apple docs (iOS のイベント処理ガイド)
それが役立つことを願っています!