2012-02-13 3 views
74

У меня есть один NSDictionary и он загружается UITableView. Если пользователь прокручивает все больше и больше, я вызываю API и вытягиваю новые данные. Эти данные снова представлены в виде NSDictionary. Можно ли добавить новый NSDictionary в существующий?Добавление NSDictionary в другие NSDictionary

ответ

177

Вы искали этот парень:

[NSMutableDictionary addEntriesFromDictionary:] 

Убедитесь, что ваш UITableView словаря является NSMutableDictionary!

Check it here

+0

, но таким образом одинаковые ключи заменяются всегда – Mashhadi

+9

Да, но почему вы хотите дублировать записи ключей в словаре? –

+2

Что я хочу - '- [NSDictionary dictionaryByAddEntriesFromDictionary:]', однако такого метода в 'NSDictionary' не существует. –

2

Является ли ваш NSDictionary полным других NSDictionaries? Похоже, вам понадобится NSMutableArray, в который вы могли бы добавить NSdictionaries в конце. Предполагая, что вы можете контролировать поток поступающих данных и не будет подвергать риску дублирование в вашем массиве, вы, безусловно, можете добавить данные.

NSMutableArray *array = [[NSMutableArray alloc] init]; 
arrayCount = [array count]; // check the item count 
[array addObject:dictToAppend]; 

Не видя, как вы его реализуете, я не могу представить более подробные примеры кода. Добавление элементов легко сделать, но знаю, что это можно сделать только с изменчивыми версиями массивов или словарей. Надеюсь, это немного поможет.

12

Используйте NSMutableDictionary addEntriesFromDictionary, чтобы добавить два словаря в новый изменяемый словарь. Затем вы можете создать NSDictionary из измененного, но обычно не требуется, чтобы словарь не изменялся.

+0

немного резок, что это был первый и правильный ответ, и вы еще не видели ни одного голоса! – Rambatino

Смежные вопросы