iOS-让TableViewCell的TextField收起输入框

TableView中难免会在cell里添加TextField或者TextView,但是发现在添加

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    [self.view endEditing:YES];
}

代码后并不起作用。

原因是在点击事件已经在TableView上被响应了,换成下面的方法都OK。
点击收起键盘:

UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyBoard)];
    tapGestureRecognizer.cancelsTouchesInView = NO;//默认为YES,会吸收didSelect事件
    [self.tableView addGestureRecognizer:tapGestureRecognizer];

滑动收起键盘:
self.tableView.keyboardDismissMode = UIScrollViewKeyboardDismissModeOnDrag;

当然,方法还有很多,只是其中一个思路。

你可能感兴趣的:(iOS-让TableViewCell的TextField收起输入框)