UITextField выделяет текст, когда пользователь нажимает пробел

У меня есть UITextField, который я разрешаю пользователю писать теги, как мы это делаем в stackoverflow. То, что я действительно хочу, это именно то, что делает stackoverflow, с небольшой разницей, которая заключается в обнаружении сенсорной кнопки пробела пользователя на клавиатуре. Что ж, stackoverflow мгновенно выполняет поиск и отображает результаты. Вместо этого я хочу, чтобы пользователь нажимал кнопку пробела. У вас, ребята, есть какие-нибудь идеи, какой-нибудь учебник, который я могу извлечь? Я уверен, что буду использовать метод UITextFieldDelegate, который


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


Но я не знаю, как выделить слова до того, как пользователь начнет нажимать другое слово.


person limon    schedule 16.08.2012    source источник
comment
Вы можете обнаружить символ пробела, реализуя этот метод UITextFieldDelegate: - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replaceString:(NSString *)string Удачи вам!   -  person Ricard Pérez del Campo    schedule 16.08.2012


Ответы (1)


Чтобы выделить текст, вам нужно будет использовать NSAttributestring, а для этого вам нужно будет использовать UITextView, который поддерживает NSAttributestring.

Обратитесь к ссылке EGOTextView, поддерживающей NSAttributeststring.

Сделайте так, чтобы обнаружить пробел в UITextField следующим образом:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
     NSString *lastCharacter = [string substringWithRange:NSMakeRange([string length]-1, 1)];
     if([lastCharacter isEqualToString:@" "])
     {
         //space button pressed
     }
     else
     { 
         // continue
     }
}
person Paresh Navadiya    schedule 16.08.2012