Как заменить текст в UITextInput?

Я использую UITextInput в customView:

Мой код: https://github.com/lequysang/github_zip/blob/master/UITextInputDebug.zip

@property (strong,nonatomic) id<UITextInput> textInput;

После ввода некоторых символов я хочу вернуться на 4 символа и заменить текст в этой позиции (заменить любой на T). Текущий курсор в конце.

Как это сделать?

Я пытаюсь replaceRange с UITextRange, но не знаю, как получить с ним позицию и размер!

Пожалуйста помоги! Заранее спасибо!


person LE SANG    schedule 18.03.2013    source источник
comment
Вставить текст в текущее положение курсора? извините я вас не понял..   -  person Shamsudheen TK    schedule 18.03.2013
comment
Я просто нахожу метод insertText. А Текст уже вставлен. Я хочу вернуть 4 символа и заменить в этой позиции.   -  person LE SANG    schedule 18.03.2013
comment
вы пробовали replaceRange:withText: ?   -  person lu yuan    schedule 18.03.2013
comment
Примечание. Ваше свойство textInput должно быть слабым. Сильные делегаты, скорее всего, приведут к циклам удержания.   -  person memmons    schedule 02.12.2013


Ответы (1)


replaceRange:withText:

Заменить текст в документе, который находится в указанном диапазоне. (требуется)

- (void)replaceRange:(UITextRange *)range withText:(NSString *)text

Параметры

range

Диапазон текста в документе.

text

Строка для замены текста в диапазоне.

Доступность Доступно в iOS 3.2 и более поздних версиях.

См. также

– textInRange: 

Заявлено в UITextInput.h

person Shamsudheen TK    schedule 18.03.2013
comment
Еще раз спасибо @Ramshad! Вы даете мне лучший способ! Но я застрял, чтобы получить позицию текста с помощью UITextRange и UITextPosition. Пожалуйста, помогите узнать! - person LE SANG; 19.03.2013