0

У меня есть основной вид таблицы с контроллером отображения поиска. Я использую пользовательский cell.h реализующимЯчейка в UISearchController SearchTableView не отвечает на didSelectRowAtIndexPath

  • (аннулируются) setSelected: (BOOL), выбираемый анимированный: (BOOL) анимированные

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

  • (Недействительный) Tableview: (UITableView *) Tableview willDisplayCell: (UITableViewCell *) клетки forRowAtIndexPath : (NSIndexPath *) indexPath

Однако эта клетка, которая отображается на контроллере поиска дисплея не реагирует на didSelectRowAtIndexPath и didDeselectRowAtIndexPath. С другой стороны, другие клетки реагируют на оба метода.

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

Прошу совета. Большое спасибо.

ответ

0

Я нашел ответ на мой вопрос:

Использование

  • (аннулируются) searchDisplayController: (UISearchDisplayController *) контроллер willShowSearchResultsTableView: (UITableView *) Tableview

И

[tableView selectRowAtIndexPath: [NSIndexPath indexPathForRow: [searchResult indexOfObject: currentFriend] inSection: 0] анимированный: NO scrollPosition: 0];

Вместо

(аннулируется) Tableview: (UITableView *) Tableview willDisplayCell: (UITableViewCell *) клетка forRowAtIndexPath: (NSIndexPath *) indexPath

Надеется, что это помогает!

Смежные вопросы