Saya benci menambahkan fungsi yang sama ke setiap UIViewController. Dengan memperluas UIViewController untuk mendukung UITextFieldDelegate, Anda dapat memberikan perilaku default "kembali ditekan".
extension UIViewController: UITextFieldDelegate{
public func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true;
}
}
Saat Anda membuat UIViewController dan UITextField baru, yang harus Anda lakukan adalah menulis satu kode baris di UIViewController Anda.
override func viewDidLoad() {
super.viewDidLoad()
textField.delegate = self
}
Anda bahkan dapat menghilangkan kode satu baris ini dengan mengaitkan delegasi di Main.storyboard. (Menggunakan "ctrl" dan seret dari UITextField ke UIViewController)