swift - проверка UITextField
у меня есть эти выходы в моем приложении:
@IBOutlet var name1: UITextField!
@IBOutlet var name2: UITextField!
@IBOutlet var name3: UITextField!
@IBOutlet var name4: UITextField!
@IBOutlet var newButton: UIButton!
Что я пытался сделать, это следующее:
Каждый раз, когда пользователь вводит что-либо в одно из этих четырех текстовых полей или удаляет что-либо, я хочу проверить, пусто ли какое-либо текстовое поле
Если какое-либо текстовое поле пусто, кнопка должна быть отключена.
Если все текстовое поле установлено (не пусто), кнопка должна быть включена.
Мой код:
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
setButton()
return true
}
func setButton() {
let inputValid = checkInput()
if inputValid {
newButton.enabled = true
} else {
newButton.enabled = false
}
}
func checkInput() -> Bool {
let name1Value = name1.text
let name2Value = name2.text
let name3Value = name3.text
let name4Value = name4.text
if !name1Value.isEmpty && !name2Value.isEmpty && !name3Value.isEmpty && !name4Value.isEmpty {
return true
}
return false
}
Хорошо, сейчас это работает на 50%.
Когда я набираю один символ в каждом текстовом поле, кнопка по-прежнему отключена.
Когда я добавляю второй в любое текстовое поле, кнопка включается и т. Д ...
Кто-нибудь может мне помочь с этим?
Привет и спасибо!