![](/img/trans.png)
[英]How to search a NSArray filled with UIImageViews for a certain image property?
[英]Search a NSArray filled with JSON for a specific title
我正在开发我的第一个认真的iPhone应用程序,并且第一次使用json。 现在,我在表视图上方有一个搜索字段,我想将数据过滤到输入的搜索文本中。 JSON如下所示:
{
"id":1,
"title":"Een Product",
"category":"Categorie",
"description":"Een Beschrijving",
"price":"10.00",
"image":"http:\/\/dev.smit-it.info\/APP\/LOGO\/een.png"
},
现在我想能够按标题搜索,我正在尝试以下方法。
- (void) searchBarSearchButtonClicked:(UISearchBar *)sender
{
[self.SearchbarOnDisplay resignFirstResponder];
self.SearchbarOnDisplay.showsCancelButton=NO;
//ToDo:Get the search results
NSString *match = self.SearchbarOnDisplay.text;
self.SearchIsStarted = YES;
NSPredicate *sPredicate = [NSPredicate predicateWithFormat:@"SELF CONTAINS[cd] %@", match];
NSArray *ArrayWithFilteredContent;
ArrayWithFilteredContent = [self.dynamicData.DynamicRetrevedData filteredArrayUsingPredicate:sPredicate];
[self.tableView reloadData];
}
现在我设置了一些断点,问题是self.dynamicData.DynamicRetrevedData
为NIL。 我不明白的是,这是在viewdidload中的alloc和init,并且当前在tableview中显示了数据。 如果不是零,我如何指定它搜索标题。
希望您能提供帮助,我已经尝试了2天了
首先是您的NSPredicate
模式不正确,应该是
NSPredicate *sPredicate = [NSPredicate predicateWithFormat:@"title CONTAINS[cd] %@", match]; // or @"title beginswith[c] %@" for alphabetically search.
但这不是其他问题。 首先逐行检查代码,如果您的tableView数据正确显示,那么它应该可以正常工作self.dynamicData.DynamicRetrevedData
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.