我正在使用 filterContentForSearchText 来搜索表格视图。搜索效果很好,但是当我选择一行时,我让它将该行的 ID 发送到我的目标视图控制器。当我进行搜索时,它仍然会发送我搜索之前该行的 ID。我完全理解问题所在,但我不知道如何解决它。这是我到目前为止所拥有的:
- (void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope
{
NSPredicate *resultPredicate = [NSPredicate predicateWithFormat:@"SELF contains[cd] %@", searchText];
searchResults = [[projectArray valueForKey:@"clientName"] filteredArrayUsingPredicate:resultPredicate];
}
和
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"CategorySegue"]) {
TimeCategoryViewController *dvc = [segue destinationViewController];
if ([self.searchDisplayController isActive]) {
NSIndexPath *path = [self.searchDisplayController.searchResultsTableView indexPathForSelectedRow];
NSNumber *pid = [[projectArray objectAtIndex:path.row] valueForKey:@"pid"];
dvc.selectedProject = [searchResults objectAtIndex:pid];
} else {
NSIndexPath *path = [self.tableView indexPathForSelectedRow];
NSNumber *pid = [[projectArray objectAtIndex:path.row] valueForKey:@"pid"];
dvc.selectedProject = pid;
}
}
有没有一种简单的方法可以将 ID 添加到搜索结果中,以便我可以将其传递给 dvc?