Tworzę aplikację na iPada, aby nauczyć się angielskich słów. Musi sprawdzić dane wejściowe w polu tekstowym, gdy tylko znaki zostaną wpisane w polu tekstowym. Używam funkcji swift shouldChangeCharactersInRange, aby to osiągnąć.Textfield shouldchangecharinesinrange swift
Mój kod:
func textField(textField: UITextField, shouldChangeCharactersInRange range:NSRange, replacementString string: String) -> Bool {
if TextField1.text == "apple" {
checkImageView1.hidden = false
}
else {
checkImageView1.hidden = true
}
return true
}
Trzeba pokazać obraz czy słowo jest wpisane w prawo, w tym przypadku „apple”. Problem polega na tym, że gdy użytkownik wpisze "e" z "jabłka", check wyświetli tylko "appl" i nie wyświetli obrazu.
Ktoś wie, jak rozwiązać ten problem?
Dlaczego to nie jest możliwe do połączenia w IB Nigdy nie dowiem się. –
Działa to lepiej niż metoda delegata! doskonały!! – user3069232
W Swift 3.0 występuje niewielka zmiana składni w następujący sposób. myTextField.addTarget (self, action: #selector (didChangeText (textField :)), dla: .editingChanged) – woogii