处理方法:

//1.设置代理
tapGestureRecognizer.delegate = self ;

//2.
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{

     //tableViewCell时不接收Touch事件
    if ([NSStringFromClass([touch.view class]) isEqualToString:@"UITableViewCellContentView"]) {
        return NO;
    }
    return  YES;
}

高级一点的:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
    if ([touch.view findSuperViewWithClass:[SGCarFuzzySearchView class]]) {
        return NO;
    }
    return YES;
}

参考: https://stackoverflow.com/questions/18962771/getting-uitableviewcell-with-superview-in-ios-7

@interface UIView (SuperView)

- (UIView *)findSuperViewWithClass:(Class)superViewClass;

@end

@implementation UIView (SuperView)

- (UIView *)findSuperViewWithClass:(Class)superViewClass {
- 
    UIView *superView = self.superview;
    UIView *foundSuperView = nil;
    while (nil != superView && nil == foundSuperView) {
        if ([superView isKindOfClass:superViewClass]) {
            foundSuperView = superView;
        } else {
            superView = superView.superview;
        }
    }
    return foundSuperView;
}
@end