Эта функция является обратным вызовом из UITextFieldDelegate. Но он будет запущен только в том случае, если класс с этим подключен к делегату вашего UITextField.
простой Пример с использованием iOS ViewController:
class yourViewController: UIViewController, UITextFieldDelegate
{
/* Make sure that your variable 'myTextField' was created using an IBOutlet from your storyboard*/
@IBOutlet var myTextField : UITextField!
override func ViewDidLoad()
{
super.viewDidLoad()
myTextField.delegate = self // here you set the delegate so that UITextFieldDelegate's callbacks like textFieldDidBeginEditing respond to events
}
func textFieldDidBeginEditing(_ textField: UITextField) {
if textField == myTextField {
print("pressed")
}
}
}
Убедитесь, что вы понимаете концепцию обработки событий шаблона делегирования и то, как делегат захватывает и публикует события, подобные этому, например. Многие компоненты Cocoa GUI используют этот дизайн. Вот некоторые полезные ссылки.
https://docs.swift.org/swift-book/LanguageGuide/Protocols.html
https://developer.apple.com/documentation/uikit/uitextfielddelegate
http://www.andrewcbancroft.com/2015/03/26/what-is-delegation-a-swift-developers-guide/