UITextField становиться первым ответчиком не работает - PullRequest
0 голосов
/ 11 июля 2011

У меня есть вид списка в нижней части экрана и форма для ввода в 4 поля в верхней части экрана.Когда я нажимаю на элемент списка, я хотел бы установить фокус на первое текстовое поле.

У меня есть такой код:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle  forRowAtIndexPath:(NSIndexPath *)indexPath
{

    ....
    ....
    else if(editingStyle == UITableViewCellEditingStyleInsert)
        {
               [self clrscreen];

               [oDescription becomeFirstResponder];
            }

, но он не работает.Должен ли я сначала получить фокус из списка или что-то в этом роде

1 Ответ

1 голос
/ 11 июля 2011

Может быть, в методе

[self clrscreen];

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

[oDescription becomeFirstResponder];

, его там нет.Пожалуйста, проверьте, если oDescription не nil.

Еще одна вещь: где / когда это называется:

....
....
else if(editingStyle == UITableViewCellEditingStyleInsert) ?
...