【发布时间】:2009-06-19 17:17:58
【问题描述】:
所以我试图从核心数据中获取对象。我有 80 个对象的列表,我希望能够使用 UISearchBar 搜索它们。它们显示在表格中。
使用关于谓词的苹果文档,我将以下代码放在一个 UISearchBar 委托方法。
- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar {
if (self.searchBar.text !=nil)
{
NSPredicate *predicate =[NSPredicate predicateWithFormat:@"name LIKE %@", self.searchBar.text];
[fetchedResultsController.fetchRequest setPredicate:predicate];
}
else
{
NSPredicate *predicate =[NSPredicate predicateWithFormat:@"All"];
[fetchedResultsController.fetchRequest setPredicate:predicate];
}
NSError *error = nil;
if (![[self fetchedResultsController] performFetch:&error]) {
// Handle error
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort(); // Fail
}
[self.tableView reloadData];
[searchBar resignFirstResponder];
[_shadeView setAlpha:0.0f];
}
如果我在搜索字段中键入与其中一个对象的 name 属性完全匹配的内容,则搜索会起作用,并且它会使用具有对象名称的单个单元格重新填充表格。如果我不准确搜索名称,我最终没有结果。
有什么想法吗?
【问题讨论】:
-
抱歉代码中缺少格式,我忘记添加代码示例标签
-
您可以编辑您的帖子以正确格式化代码...
标签: iphone