0

さまざまなタイプのサブビューを含むビューがあります。ある時点で、ビューとサブビューとのすべてのインタラクションを無効にし、代わりに、ビュー全体に配置したジェスチャレコグナイザーからのタップを登録したいと思います。

tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:revealController action:@selectorrdoSomething:)];
tapGestureRecognizer.cancelsTouchesInView = YES;

それは一種の作品ですが、下のビューはまだすべてのタッチに相互作用します。次に、次を追加してみました。

tapGestureRecognizer.delaysTouchesBegan = YES;
tapGestureRecognizer.delaysTouchesEnded  = YES;

UITextFieldをタップすると、ジェスチャレコグナイザーのタッチINSTEADを受け取ります。なぜこれなのか、どうすれば止められますか?どんな助けでも大歓迎です:)

4

1 に答える 1

2

.userInteractionEnabledあなたがしたいことのように聞こえるのは、 touchesプロパティを受け取りたくないビューをに設定することですFALSE。または、私は何かを誤解しています。

yourView.userInteractionEnabled = FALSE;
于 2012-06-12T09:38:39.450 に答える