iOS: UITextField selectAll + Редактирование началось не работает - PullRequest
2 голосов
/ 15 сентября 2011

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

.h

- (IBAction)urlEditingDidBegin: (id)sender;

.m

- (IBAction)urlEditingDidBegin:(id)sender
{
    NSLog(@"Select Contents");

    [sender setText:@"Why isn't this working"];
    [sender selectAll:self];
}

В конструкторе интерфейса я связал событие UITextField «Editing Did Begin» с владельцем файла и подключил его к моему методу urlEditingDidBegin.

Когда я нажимаю UITextField, текст в полеменяется на «Почему это не работает», что доказывает, что метод срабатывает и что отправитель верен, однако текст не выделяется.

Что я делаю не так?

Ответы [ 3 ]

3 голосов
/ 16 сентября 2011

Как правило, если вы хотите предоставить пользователю простой способ очистки текста, добавьте очистить , установив для кнопки очистки значение «Появляется во время редактирования» в xib или вызвав

* 1004.*[textField setClearButtonMode:UITextFieldViewModeWhileEditing];

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

1 голос
/ 15 сентября 2011

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

0 голосов
/ 15 сентября 2011

установите делегата на себя и передайте <UITextFieldDelegate> в ваш .h файл

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...