我想在我的iOS应用程序中添加一个谷歌即时搜索栏,就像在iOS Safari中一样,我无法在任何地方找到它。你们能帮忙吗? 提前谢谢。
答案 0 :(得分:2)
我假设你正在使用UISearchBar。
您可以使用
中的代码- (void) searchBarSearchButtonClicked:(UISearchBar *)theSearchBar
方法中的
- (void) searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
请记住,您不需要在 searchBar:textDidChange中使用resignFirstResponder。
例如,在这个方法中可以是:
NSError *error = nil;
// We use an NSPredicate combined with the fetchedResultsController to perform the search
if (self.mySearchBar.text !=nil)
{
if ([searchCriteria isEqualToString:@"artist"])
{
NSPredicate *predicate =[NSPredicate predicateWithFormat:@"artist contains[cd] %@", self.mySearchBar.text];
[fetchedResultsController.fetchRequest setPredicate:predicate];
}
}
else
{
NSPredicate *predicate =[NSPredicate predicateWithFormat:@"All"];
[fetchedResultsController.fetchRequest setPredicate:predicate];
}
if (![[self fetchedResultsController] performFetch:&error])
{
// Handle error
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
exit(-1); // Fail
}
// this array is just used to tell the table view how many rows to show
fetchedObjects = fetchedResultsController.fetchedObjects;
// dismiss the search keyboard
[mySearchBar resignFirstResponder];
// reload the table view
[myTableView reloadData];
}
随意给这个答案+1,如果对我这样的人有帮助,他们会从谷歌搜索结果到这篇文章:)
brush51