Кнопка отмены UISearchDisplayController не обновляет заголовки и индекс - PullRequest
1 голос
/ 11 февраля 2011

У меня есть табличное представление с длинным списком строк. Есть заголовки для каждого раздела, индекс по правой стороне и кнопка поиска. Это было реализовано программно с использованием UISearchDisplayController (т.е. не в IB).

Когда кнопка поиска активирована, я скрываю заголовки (в titleForHeaderInSection) и скрываю индекс (в sectionIndexTitlesForTableView), спрашивая
if ([self.searchDisplayController isActive])

Проблема в том, что при нажатии кнопки отмены заголовки и индекс сначала остаются скрытыми. Я пытался (в searchBarCancelButtonClicked) позвонить [self.tableView reloadData], но это не сработало.

У меня есть [self.tableView reloadData] в моем viewWillAppear, который помогает одним способом: если я выберу строку, перенесу другое представление в стек, а затем вернусь к этой таблице, заголовки и индекс будут там, как требуется .

Что я могу делать не так?

1 Ответ

0 голосов
/ 11 февраля 2011

Я обнаружил, что иногда, когда [tableView reloadData] не работает, выполнение этого будет:

[tableView performSelector:@selector(reloadData) withObject:nil afterDelay:0];

По какой-то причине иногда табличное представление переходит в такое состояние, что оно должно ждатьдо следующей итерации цикла выполнения до перезагрузки.

...