Добавление и удаление NSMutableDictionary KVO

У меня быстрый вопрос относительно KVO. Я понимаю, что для NSArray, если требуется наблюдение за дополнениями, вы можете сделать следующее.

 NSIndexSet* set = [NSIndexSet indexSetWithIndex:[someIndex integerValue]];
            [self willChange:NSKeyValueChangeInsertion valuesAtIndexes:set forKey:@"theArrayName"];
                // add the objects at the specified indexes here
            [self didChange:NSKeyValueChangeInsertion valuesAtIndexes:set forKey:@"theArrayName"];

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

Однако я не понимаю, как я могу наблюдать за добавлением новых объектов в NSMutableDictionary. Есть ли способ наблюдать за добавлением / удалением объекта?

Спасибо,

[РЕДАКТИРОВАТЬ] Я нашел решение, которое соответствует моим текущим потребностям. Я надеюсь, что следующее поможет любым будущим разработчикам.

[self willChangeValueForKey:@"someDictionary" withSetMutation:NSKeyValueUnionSetMutation usingObjects:[NSSet setWithObject:someObject]];

[Images setObject:someObject forKey:someIndex];

[self didChangeValueForKey:@"someDictionary" withSetMutation:NSKeyValueUnionSetMutation usingObjects:[NSSet setWithObject:someObject]];
7
задан DoubleDunk 5 July 2011 в 17:52
поделиться