У меня есть пользовательский вид, который отображает список слов, введенных с UITextField.iOS 9 (Swift 2) - resignFirstResponder() выдает ошибку
Для простого и быстрого ввода я намеревался не скрывать клавиатуру после нажатия клавиши возврата, но вместо этого я возвращаю текстовое поле и позволяю пользователю продолжать вводить больше слов. Мне нужно скрыть клавиатуру, когда пользователь выполнил ввод слов, а это означает, что пользователь выходит за пределы текстового поля.
Но следующая реализация дает мне неперехваченное исключение при кранах вне текстового поля.
Интересно, вызывает ли пустая строка проверка, связанная с resignFirstResponder(), но мне нужно убедиться, что в этом поле содержатся некоторые значения.
Я думаю, self.endEditing(true)
не имеет отношения к моей ситуации, так как нет способа узнать, когда пользователь хочет закончить редактирование, если не коснуться текстового поля.
override func viewDidLoad() {
super.viewDidLoad()
textField.delegate = self
textField.returnKeyType = UIReturnKeyType.Done
}
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
textField.resignFirstResponder()
}
func textFieldShouldReturn(textField: UITextField) -> Bool {
if let text = textField.text {
addTextToList()
}
textField.text = ""
return true
}
неперехваченное Исключение составляет
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[CookMate.CreateRecipeVC ingredientTextFieldDidChange:]: unrecognized selector sent to instance 0x7f80f1de3370'
Зачем? – nhgrif
извините..Я забыл добавить. *** Завершение приложения из-за неперехваченного исключения «NSInvalidArgumentException», причина: '- [CookMate.CreateRecipeVC componentientTextFieldDidChange:]: непризнанный селектор, отправленный в экземпляр 0x7f80f1de3370' –
Что такое 'componentientTextFieldDidChange:' в ошибке? – tktsubota