Powiedzmy, że mam następujący kod:
IBOutlet UITextField* nameTextField;
IBOutlet UILabel* greetingLabel;
Chciałbym greetingLabel
przeczytać „Hello [nameTextField]”, gdy tylko użytkownik naciśnie dowolny klawisz.
Zasadniczo potrzebuję odpowiednika metody delegata Cocoa na iPhone'a controlTextDidChange
.
Metoda textField:shouldChangeCharactersInRange:
delegata jest wywoływana za każdym razem, gdy występuje naciśnięcie klawisza:
- (BOOL) textField:(UITextField *)textField
shouldChangeCharactersInRange:(NSRange)range
replacementString:(NSString *)string
Argument łańcuchowy zwraca naciśnięty znak. Jednak rzeczywista textField
wartość ( nameTextField.text
) pozostaje pusta.
Czego tu brakuje? (Chciałbym nameTextField
odzwierciedlić dokładny ciąg wprowadzony przez użytkownika do tej pory).