Я работаю над своим первым серьезным приложением для iphone и с помощью json в первый раз. Теперь у меня есть поле поиска над моей таблицей, и я хочу отфильтровать данные для введенного текста поиска. JSON выглядит следующим образом:Поиск NSArray, заполненный 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. что я не понимаю, потому что это alloc и init в viewdidload, и данные в настоящее время отображаются в представлении таблицы. И если это было не ноль, как я могу указать, что он ищет заголовок.
Надеется, что вы можете помочь, я уже пытаюсь это для
Если некоторые из вас скорее хотят, чтобы проект был рад поделиться им – Msmit1993
Будет проще с самим проектом или, по крайней мере, вставить код для просмотраDidLoad поэтому мы можем видеть, где и как вы распределяете материал. –
Что такое 'self.dynamicData.DynamicRetrevedData' ?? сначала проверьте его в NSLog перед NSPredicate – iPatel