我有一个按钮和手势识别,当按下按钮时,只应调用一个方法

时间:2013-02-08 12:56:46

标签: iphone ios6 uibutton xcode4.5 uigesturerecognizer

我有一个按钮和手势识别,当按下按钮时,只应调用一个方法。

大多数情况下只调用手势识别,但是每次都没有,然后调用按钮会导致问题。

我有一个视图,然后是滚动视图。我的所有按钮都在滚动视图上

1 个答案:

答案 0 :(得分:3)

您可以在视图控制器中实现此功能,并将其分配给手势识别器的代理。

- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
    CGPoint p = [gestureRecognizer locationInView:self.view];
    UIView *view = [sefl.view hitTest:p withEvent:nil];
    if ([view isKindOfClass:[UIButton class]]) {
        return NO;
    }
    return YES;
}

如果- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch不合适,您可以使用类似的逻辑实现gestureRecognizerShouldBegin: