TableView搜索控制器附件视图不会更新

时间:2015-07-09 14:30:17

标签: ios objective-c

我已经为每一行构建了一个带有附件视图的简单tableview。 我添加了一个uisearchcontroller。每次我搜索一个对象,然后选择该对象的附件视图时,附件视图图像不会更新。

- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath {
UIButton *button = (UIButton *)cell.accessoryView;
UIImage *Image;
Image = [UIImage imageNamed:@"unchecked.png"];
[button setBackgroundImage:Image forState:UIControlStateNormal]; }

取消搜索后,我搜索的行的复选标记可见(附件视图)。

2 个答案:

答案 0 :(得分:0)

你需要使用UISearchController的resultTableView的单元格,试试这个:

- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath {
    if(tableView == self.searchDisplayController.searchResultsTableView)
         cell=[self.searchDisplayController.searchResultsTableView cellForRowAtIndexPath:indexPath];
    else
         cell=[self.tableView cellForRowAtIndexPath:indexPath];
    UIButton *button = (UIButton *)cell.accessoryView;
    UIImage *Image;
    Image = [UIImage imageNamed:@"unchecked.png"];
    [button setBackgroundImage:Image forState:UIControlStateNormal]; }

答案 1 :(得分:0)

这对我有用!感谢user207616

if (self.searchDisplayController.active) {
self.searchDisplayController.searchBar.text = self.searchDisplayController.searchBar.text; }