Я ненавижу добавлять ту же функцию для каждого UIViewController. Расширяя UIViewController для поддержки UITextFieldDelegate, вы можете обеспечить поведение по умолчанию «нажатие возврата».
extension UIViewController: UITextFieldDelegate{
public func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true;
}
}
Когда вы создаете новый UIViewController и UITextField, все, что вам нужно сделать, это написать однострочный код в вашем UIViewController.
override func viewDidLoad() {
super.viewDidLoad()
textField.delegate = self
}
Вы даже можете пропустить этот однострочный код, перехватив делегат в Main.storyboard. (Используя "Ctrl" и перетащите из UITextField в UIViewController)