Использование gotFirstResponder приводит к тому, что кнопка отмены не работает.

StackOverflow https://stackoverflow.com//questions/21007059

Вопрос

у меня есть UISearchDisplayController (searchDisplayCtr) и UISearchBar (панель поиска).Я пытаюсь сосредоточить внимание на панели поиска и вызвать клавиатуру, когда нажимаю значок поиска в прокрутке алфавита справа.Если я включу,

[self.searchDisplayCtr setActive:YES];
[self.searchDisplayCtr.searchBar becomeFirstResponder];

Он вызывает клавиатуру и выбирает панель поиска, но кнопка отмены не работает постоянно.Я попытался отказаться от службы экстренного реагирования, установив для параметра «активно» значение «НЕТ», и то и другое в searchDisplayControllerWillEndSearch, но это не помогает.Кнопка отмены будет работать только в том случае, если на прокрутке алфавита еще не были нажаты никакие другие буквы.

Это было полезно?

Решение

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

[tableView setContentOffset:CGPointMake(0, 0) animated:NO];
[self.searchBar  becomeFirstResponder];
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top