我已经为每一行构建了一个带有附件视图的简单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]; }
取消搜索后,我搜索的行的复选标记可见(附件视图)。
答案 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; }