我想用数组实现UIsearchBar
。我有一个城市名称的数组。如何使用表格视图实现它?
答案 0 :(得分:0)
首先,您应设置UISearchBar
的委托,并使用过滤结果创建其他NSMutableArray
。您UITableView
的dataSource现在将释放此新数组。
然后,添加如下的委托方法:
-(void)searchBar:(UISearchBar*)searchBar textDidChange:(NSString*)text {
filteredTableData = [[NSMutableArray alloc] init];
for (Food* food in allTableData)
{
NSRange nameRange = [food.name rangeOfString:text options:NSCaseInsensitiveSearch];
NSRange descriptionRange = [food.description rangeOfString:text options:NSCaseInsensitiveSearch];
if(nameRange.location != NSNotFound || descriptionRange.location != NSNotFound)
{
[filteredTableData addObject:food];
}
}
[self.tableView reloadData];
}
有关完整代码,请参阅此处:Filtering a UITableView with a search bar
希望这有帮助。