Как получить ключ возврата для выполнения того же действия, что и нажатие кнопки в Swift?
Я хочу знать, как вы разрешаете действие, либо нажав клавишу возврата на клавиатуре программного обеспечения, либо нажав кнопку UIButton.
Кнопка пользовательского интерфейса уже настроена для выполнения IBAction.
Как мне также разрешить пользователям нажимать клавишу возврата на клавиатуре для выполнения того же действия?
Ответы
Ответ 1
Убедитесь, что ваш класс расширяет протокол UITextFieldDelegate
SomeViewControllerClass : UIViewController, UITextFieldDelegate
Вы можете выполнить действие следующим образом:
override func viewDidLoad() {
super.viewDidLoad()
self.textField.delegate = self
}
func textFieldShouldReturn(textField: UITextField) -> Bool {
//textField code
textField.resignFirstResponder() //if desired
performAction()
return true
}
func performAction() {
//action events
}
Ответ 2
UPDATE
Если целью развертывания является iOS 9.0 или новее, вы можете связать событие "Первичное действие с триггером" вашего текстового поля с действием, например:
![подключение события с инициированием первичного действия]()
ОРИГИНАЛ
Сделайте свой контроллер просмотра принятым протоколом UITextFieldDelegate
.
Установите делегат текстового поля в свой контроллер представления.
Внесите textFieldShouldReturn:
, чтобы вызвать действие.
Ответ 3
Если целью развертывания является iOS 9.0 или новее, вы можете связать событие "Первичное действие с триггером" вашего текстового поля с действием, например:
Мне не удалось заставить "Primary Action Triggered" работать, как было предложено. Я использовал "Editing Did End" и работает сейчас Снимок экрана редактирования был завершен
![введите описание изображения здесь]()