У меня есть один, NSDictionary
и он загружается UITableView
. Если пользователь прокручивает все больше и больше, я вызываю API и извлекаю новые данные. Эти данные снова представлены в виде файла NSDictionary
. Можно ли добавить новое NSDictionary
к существующему?
objective-c
ios
uitableview
nsdictionary
Slonkar
источник
источник
-[NSDictionary dictionaryByAddEntriesFromDictionary:]
, чтобы такого метода не былоNSDictionary
.+ (instancetype)dictionaryByAddingEntriesFromDictionary:(NSDictionary *)dictionary { NSMutableDictionary *combinedDictionary = [NSMutableDictionary dictionaryWithDictionary:self]; [combinedDictionary addEntriesFromDictionary:dictionary]; return combinedDictionary; }
Извините за проблемы с форматированием. StackOverflow не поддерживает удобное форматирование многострочного кода в комментариях.Используйте NSMutableDictionary addEntriesFromDictionary, чтобы добавить два словаря в новый изменяемый словарь. Затем вы можете создать NSDictionary из изменяемого, но обычно не обязательно иметь неизменяемый словарь.
источник
Есть ли в вашем NSDictionary другие NS-словари? Похоже, вам понадобится NSMutableArray, в который вы можете добавить NSDictionaries в конце. Предполагая, что вы можете контролировать поток поступающих данных и не подвергаться риску дублирования в вашем массиве, вы, безусловно, можете добавить данные.
NSMutableArray *array = [[NSMutableArray alloc] init]; arrayCount = [array count]; // check the item count [array addObject:dictToAppend];
Не видя, как вы это реализуете, я не могу привести более подробные примеры кода. Добавлять элементы легко, но знайте, что это можно сделать только с изменяемыми версиями массивов или словарей. Надеюсь, это немного поможет.
источник