【发布时间】:2013-09-19 08:08:05
【问题描述】:
我正在使用NSFetchedResultsController 来存储类型为:XMPPUserCoreDataStorageObject 的自定义对象。我需要在 fetchedResultsController 中搜索 XMPPUserCoreDataStorageObject 的字段 displayName 和搜索文本之间的匹配项。
我通过以下方式访问该字段:
XMPPUserCoreDataStorageObject *user = [[self fetchedResultsController] fetchedObjects] objectAtIndex:i];
然后:
user.displayName;
其中i 是NSFetchedResultsController 中的对象数。
如何使用格式创建谓词来比较user.displayName; 和searchText?
我的搜索方法是:
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
if ([searchText length] == 0) {
fetchedResultsController = nil;
}
else {
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"XXX contains[cd] %@", searchText];
[[fetchedResultsController fetchRequest] setPredicate:predicate];
[[fetchedResultsController fetchRequest] setFetchLimit:50];
}
NSError *error;
if (![[self fetchedResultsController] performFetch:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
}
[mainTableView reloadData];
}
【问题讨论】:
标签: objective-c search nspredicate xmppframework nsfetchedresultscontroller