Итак, я пытаюсь извлечь объекты из основных данных. У меня есть список из 80 объектов, и я хочу, чтобы их можно было просмотреть с помощью UISearchBar. Они отображаются в таблице.
Используя документацию Apple по предикатам, я поместил следующий код в один методов делегата 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];
}
Если я нахожу в поле поиска точное совпадение с свойством имени одного из этих объектов, поиск работает, и он повторно заполняет таблицу одной ячейкой с именем объекта. Если я не ищу точное имя, я не получаю никаких результатов.
Любые мысли?