我有两个数组:

NSMutableArray *moviesArray;
NSMutableArray *directorsArray;
moviesArray = [@"movie01",@"movie02",@"movie03",@"movie04"];
directorsArray = [@"director01",@"director02",@"director03",@"director04"];


我在表格视图中显示此内容。每个单元都有一个标题标签和一个导演标签。

cell.titleLabel.text = [moviesArray objectAtIndex:indexPath.row];
cell.directorLabel.text = [directorsarray objectatIndex:indexPath.row];


我正在使用搜索栏搜索电影标题,所以我这样做:

//Search Filter Code
- (void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope {
    NSPredicate *resultPredicate = [NSPredicate predicateWithFormat:@"SELF contains[c] %@", searchText];
    searchResults = [moviesArray filteredArrayUsingPredicate:resultPredicate];
    NSLog(@"Search Results: %@", searchResults);
}

-(BOOL)searchDisplayController:(UISearchDisplayController *)controller shouldReloadTableForSearchString:(NSString *)searchString {
[self filterContentForSearchText:searchString
                           scope:[[self.searchDisplayController.searchBar scopeButtonTitles]
                                  objectAtIndex:[self.searchDisplayController.searchBar
                                                 selectedScopeButtonIndex]]];

return YES;
}


然后在我的单元格中:

if (tableView == self.searchDisplayController.searchResultsTableView) {
    cell.pdmTitle.text = [searchResults objectAtIndex:indexPath.row];
[...] }


所有这些工作。我的问题是,每部电影在DirectorsArray中都有一个对应的Director。
如何在我的单元格中显示匹配的导演?

意思是,如果我搜索电影03,titleLabel.text应该是movie03,directorLabel.text应该是Director03。

非常感谢您的帮助!

最佳答案

NSString *correspondingDirector = [directorsArray objectAtIndex: [moviesArray indexOfObject:@"Movie you are searching"]];

10-05 20:40
查看更多