Вы можете использовать indexesOfObjectsPassingTest:
с блоком, который ищет внутри словаря, но он неоптимален: вы будете снова и снова повторять один и тот же поиск для каждой ячейки, что может замедлить работу вашего приложения, особенно когда пользовательпрокручивает ваш стол быстро.Вам было бы гораздо лучше создать NSSet
с элементами, как только вы получите фид, и использовать его повторно при отображении ячеек таблицы.
Пример:
Создайте NSSet *allIds
при получении канала JSON, например:
allIds = [[NSMutableSet alloc] init]; // NSSet *allIds is declared
// in the same class as the array from which you get your table cells
[responseArray enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
[allIds addObjectsFromArray:[arrayOfDictsFromJsonFeed allKeys]];
}];
Когда вам нужно решить, показывать ли ваш вспомогательный вид или нет, сделайте это:
if ([allIds containsObject:currentId]) {
// Add accessory view
}