0

我有一个带有搜索显示控制器的主表视图。我正在使用实现的自定义 cell.h

  • (void)setSelected:(BOOL)选定动画:(BOOL)动画

当我从主表中选择单元格时,上面的代码会更改此选定单元格的背景颜色。当我选择从搜索栏中搜索时,搜索显示控制器使用正确的背景颜色显示所选单元格

  • (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath

但是,在搜索显示控制器上显示的该单元格不响应didSelectRowAtIndexPathdidDeselectRowAtIndexPath。另一方面,其他细胞对这两种方法都有反应。

我想要实现的是主表和搜索显示控制器上的搜索表视图之间的同步,其中选定的单元格应该在主表和搜索表视图中显示为选中状态,但允许选择和取消选择。

请指教。非常感谢。

4

1 回答 1

0

我找到了我的问题的答案:

利用

  • (void)searchDisplayController:(UISearchDisplayController *)controller willShowSearchResultsTableView:(UITableView *)tableView

[tableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:[searchResult indexOfObject:currentFriend] inSection:0] 动画:NO scrollPosition:0];

代替

(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath

希望能帮助到你!

于 2013-04-12T00:54:01.117 回答