【发布时间】:2010-11-22 05:05:00
【问题描述】:
嘿,
我有一个 NSDictionaries 数组(例如 [tempArray addObject:[[[NSMutableDictionary alloc] initWithObjects:someArray forKeys:keys] autorelease]]; ),当我尝试使用 NSPredicate 搜索它时,它一直给我“无结果”。 (TempArray 变成 self.patientList)
我没有编译时警告或错误,如果我 NSLog([self.filteredArray count]); 则它也返回 0。
这是我的相关代码:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(first contains[cd] %@)", self.searchBar.text];
self.filteredArray = [self.patientList filteredArrayUsingPredicate:predicate];
return [self.filteredArray count];
self.patientList 和 self.filteredArray 分别是 NSMutableArray 和 NSArray 类型(将 self.filteredArray 更改为 NSMutableArray 没有帮助)。
我也尝试过使用 == 而不是 contains。使用@"SELF contains[cd] %@" 仅在输入完整项目时返回一个项目(即,如果键“名称”是@“Bob”,那么如果我输入 Bob,它将显示它,但当我输入 Bo 或 ob 时不会显示)。
我真的被这个难住了。
提前致谢!
【问题讨论】:
标签: iphone nsarray nsdictionary nspredicate