J'ai TableViewController avec des UITextFields en tant que cellules et des cellules sans TextField.
Je voudrais masquer le clavier lorsque j'ai tapé sur une autre cellule sans TextField
Réponses
Trop de publicités?
Anupam Mishra
Points
1344
A.Munzer
Points
432
Vous avez deux façons de le gérer, tout d'abord vous pouvez masquer le clavier lorsque l'utilisateur a tapé sur des cellules sans champ de texte, par le biais du délégué de la table view, mais vous devez ignorer les lignes qui ont un champ de texte
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
view.endEditing(true)
}
Ou vous pouvez ajouter un UITapGestureRecognizer aux cellules qui n'ont pas de champ de texte
func hideKeyboardWhenTappedAround() {
let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(UITableViewCell.dismissKeyboard))
view.addGestureRecognizer(tap)
}
@objc func dismissKeyboard() {
view.endEditing(true)
}
Nathaniel Gonzales
Points
50