Detesto adicionar a mesma função a todos os UIViewController. Estendendo o UIViewController para oferecer suporte ao UITextFieldDelegate, você pode fornecer um comportamento padrão de "retorno pressionado".
extension UIViewController: UITextFieldDelegate{
public func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true;
}
}
Quando você cria novos UIViewController e UITextField, tudo o que você precisa fazer é escrever um código de linha no seu UIViewController.
override func viewDidLoad() {
super.viewDidLoad()
textField.delegate = self
}
Você pode até omitir esse código de uma linha conectando delegate no Main.storyboard. (Usando "ctrl" e arraste de UITextField para UIViewController)