NJones находится на правильном пути, но я думаю, что есть некоторые проблемы с его ответом.
Я предполагаю, что вы хотите пройти через прикосновения к любой кнопке в представлении прокрутки. В делегате вашего распознавателя жестов внедрите gestureRecognizer:shouldReceiveTouch:
следующим образом:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)recognizer shouldReceiveTouch:(UITouch *)touch {
UIView *gestureView = recognizer.view;
// gestureView is the view that the recognizer is attached to - should be the scroll view
CGPoint point = [touch locationInView:gestureView];
UIView *touchedView = [gestureView hitTest:point withEvent:nil];
// touchedView is the deepest descendant of gestureView that contains point
// Block the recognizer if touchedView is a UIButton, or a descendant of a UIButton
while (touchedView && touchedView != gestureView) {
if ([touchedView isKindOfClass:[UIButton class]])
return NO;
touchedView = touchedView.superview;
}
return YES;
}