2015-09-12 4 views
0

Я хотел выделить каждое появление слова в текстовом виде. Я думал, что мне нужен бесконечный цикл, потому что я хотел, чтобы он всегда просматривал текст ввода для ключевого слова. Я узнаю, что этого не может быть. Какую петлю я ищу, которая выполняет задачу непрерывного сканирования текста?Я думал, что хочу бесконечный цикл. Какую петлю я хочу?

while (range.location == textView.text.characters.count) { 
    text.addAttribute(NSForegroundColorAttributeName, value:UIColor.redColor(), range: nsString.rangeOfString("red")) 
    text.addAttribute(NSForegroundColorAttributeName, value: UIColor.redColor(), range: NSMakeRange(0, stringLength)) 
} 

ответ

0

Бесконечный цикл не то, что вы хотите. вы хотите получать уведомления, когда пользователь вносит изменения в текст, а затем перебирает текст и цвет по мере необходимости.

Ознакомьтесь с методами UITextViewDelegate. https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITextViewDelegate_Protocol/

специально

- (void)textViewDidEndEditing:(UITextView *)textView 

Это происходит, когда пользователь уходит в отставку ответчика на TextView

или лучший опыт будет поступать так, как они печатают, чтобы цвет текста.

UITextField имеет действие UIControlEventEditingChanges, которое активируется при каждом редактировании текста.

Смежные вопросы