在父类baseviewcontroller 的view上添加一个手势
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(hideKeyboard)];
singleTap.delegate = self;
[self.view addGestureRecognizer:singleTap];
然后手势响应的时候判断
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
NSLog(@"%@", NSStringFromClass([touch.view class]));
if ([NSStringFromClass([touch.view class]) isEqualToString:@"UITableViewCellContentView"]) {
[self hideKeyboard];
return NO;
}
return YES;
}
然后 子类里面 重写-(void)hideKeyboard{
}
方法。 当然在手势判断的时候也可根据自己的需求来判断