定义手势,实现协议。
UITapGestureRecognizer * gesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapGesture:)];
gesture.delegate = self;
[self.view addGestureRecognizer:gesture];
-(void)tapGesture:(NSObject *)sender{
[self.view endEditing:YES];
}
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
NSLog(@"%@",NSStringFromClass([touch.view class]));
//表示点击到的地方是cell,headcell footcell 的时候可以不可以触发手势,就能执行didSelectIndexpath了,点击其他地方的时候,收起键盘
if ([NSStringFromClass([touch.view class]) isEqualToString:@"UITableViewCellContentView"]) {
return NO;
}
return YES;
}