三步曲
1、遵守UIGestureRecognizerDelegate协议
2、给手势触发动作添加代理 代码如下
UITapGestureRecognizer *hideTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(hideAction)];
hideTap.delegate = self;
[self.view addGestureRecognizer:hideTap];
3、实现代理方法 代码如下
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
/**
*判断如果点击的是tableView的cell,就把手势给关闭了 不是点击cell手势开启
**/
if ([NSStringFromClass([touch.view class]) isEqualToString:@"UITableViewCellContentView"]) {
return NO;
}
return YES;
}