【发布时间】:2015-10-14 11:27:43
【问题描述】:
我在一个数组中有一个结果列表,其中包含每个主要对象的名称和 URL。
名称是要搜索的内容,URL 是与 TableView 中的每一行一起显示的图像。
如何仅搜索和过滤第一个子对象的结果?
- (void)filterContentForSearchText:(NSString*)searchText scope: (NSString*)scope
{
[self.searchResult removeAllObjects];
NSPredicate *resultPredicate = [NSPredicate predicateWithFormat:@"SELF contains[c] %@", searchText];
self.searchResult = [NSMutableArray arrayWithArray: [self.TableData filteredArrayUsingPredicate:resultPredicate]];
}
这不会在搜索结果中返回任何内容。当我有一个数组时它起作用了。那么如何仅在第一个子对象而不是 URL 上搜索 TableData。
这就是我在前一个 viewController 中填充数组的方式
for(NSDictionary *eachEntry in json)
{
NSString *entry = [eachEntry objectForKey:@"client"];
NSString *imageEntry = [eachEntry objectForKey:@"imgLogo"];
[_tableData addObject:[NSMutableArray arrayWithObjects:entry, imageEntry, nil]];
}
编辑
我仍然希望搜索结果包含两个对象,因为这样可以更轻松地显示正确的图像
【问题讨论】:
标签: ios objective-c arrays uitableview