我有带有UITextFields作为单元格的TableViewController和没有TextField的单元格。
当我轻按另一个没有TextField的单元格时,我想隐藏键盘
答案 0 :(得分:2)
在您的UITableViewDelegate实现中:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
view.endEditing(true)
}
答案 1 :(得分:1)
这可能会有所帮助-
9
答案 2 :(得分:1)
您有两种处理方式, 首先,您可以通过表视图委托在用户轻按没有TextField的单元格时隐藏键盘,但是您应该忽略具有textfiled的行
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
view.endEditing(true)
}
或者您可以将UITapGestureRecognizer添加到没有文本字段的单元格中
func hideKeyboardWhenTappedAround() {
let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(UITableViewCell.dismissKeyboard))
view.addGestureRecognizer(tap)
}
@objc func dismissKeyboard() {
view.endEditing(true)
}
答案 3 :(得分:1)
尝试使用“ IQKeyboardManagerSwift”,它具有将来需要的所有键盘控件。