2014-09-08 1 views
0

Я пытаюсь получить количество символов при вводе в UITextField. Я использую уведомление UIControlEventEditingChanged, чтобы затем получить текущий счет:UIControlEventEditingChanged не обнаружено при удалении только оставшегося символа из UITextField?

[textField addTarget:self action:@selector(handleTextDidChange:) forControlEvents:UIControlEventEditingChanged]; 

код работает отлично и выстрелил, когда я печатаю новые символы в поле. Он также запускается, когда я удаляю любые символы EXCEPT, если это единственный оставшийся символ в текстовом поле.

Любые идеи, почему?

ответ

0

Я проверил ваш код, и он отлично работает для меня в iOS 7.1. Что вы могли бы попробовать это:

Сделайте ViewController реализовать

<UITextFieldDelegate> 

и установить

textfield.delegate = self; 

И реализовать следующую функцию, которая также всегда дозвонились, когда персонаж должен быть изменен (даже последний). Обязательно всегда возвращайте YES, если символ должен быть изменен. С диапазоном и textfield.text вы всегда можете получить доступ к текущему символу, который необходимо изменить:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { 

    return YES; 

}