2011-06-03 2 views

ответ

0

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

2

Просто войдите во внутренний словарь, как если бы он не был внутри массива внутри словаря.

Например:

[[[settingsDictionary objectForKey:@"key1"] objectAtIndex:index] removeObjectForKey:@"key2"]; 

или более распространено:

NSArray *innerArray = [topDict objectForKey:@"key1"]; 
NSMutableDictionary *innerDict = [innerArray objectAtIndex:index]; 
[innerDict removeObjectForKey:@"key2"]; 

или используя новый индекс обозначения:

[settingsDictionary[@"key1"][index] removeObjectForKey:@"key2"]; 

Там действительно нет специального способа сделать это, что я может думать, просто получить доступ к объекту и вызвать метод removeObjectForKey.

+1

Я могу проверить, что существует не менее подробный способ сделать это. Добро пожаловать в Cocoa! : P –

+0

Стоит отметить, что теперь есть нижний индекс, чтобы сделать его более компактным. – Ephemera

+1

Слишком смешно, что вы прокомментировали это прямо сейчас! Я буквально просто редактировал этот пример, чтобы включить подстрочный указатель, но на какое-то время отвлекся на встречу, но еще не опубликовал его. :П –

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