1- レコグナイザ デリゲートとして登録しますtapRecognizer.delegate = self;
(UIGestureRecognizerDelegate であることを宣言します)。
2- shouldReceiveTouch を実装する
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
}
3- touch.view をチェックして、ジェスチャーがそのタッチを処理する必要があるかどうかを判断します。あなたの場合、チェックボックスビューの場合は NO を返します。
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
if ([touch.view isKindOfClass:[yourCheckboxClass class]]) {
return NO; // ignore the touch
}
return YES;
}
( isKindOfClass を使用する必要はありません。他の方法を使用して、チェックボックスかどうかを判断できます)