搜索时xcode 5 tableview选择

时间:2014-08-10 06:03:51

标签: xcode search select tableview

我有问题。我需要在搜索时选择一个tableview。

在正常模式下它没关系,但是当我搜索它时什么也没做。代码很简单

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{  
    UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
    if(cell.accessoryType == 0){
    cell.accessoryType = UITableViewCellAccessoryCheckmark;
    } else {
        cell.accessoryType = cell.accessoryType = UITableViewCellAccessoryNone;
    }
    [tableView deselectRowAtIndexPath:indexPath animated:YES];
}

对于选择模式,我使用:

 -(void)searchBar:(UISearchBar*)searchBar textDidChange:(NSString*)text {
    if(text.length == 0)
    {
       isFiltered = FALSE;
    } else {
       isFiltered = true;
    }
 }

1 个答案:

答案 0 :(得分:0)

搜索显示控制器在显示搜索结果时会覆盖自己的表格视图。因此,在对表视图点击作出反应之前,您需要检查当前显示的表视图。

以下是您如何确定:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

if (tableView == self.tableView) {
    // it's your "real" table view
} else {
    // search results table view
}
}

GitHub上有一个演示项目,它在一个工作项目的上下文中显示:https://github.com/versluis/TableSearch2014