7

私はKVOに関する簡単な質問があります。 NSArrayの場合、追加が必要な場合は、次のことができます。NSMutableDictionaryの追加と削除KVO

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に新しいオブジェクトの追加をどのように観測できるのか分かりません。オブジェクトの追加/削除を観察する方法はありますか?

おかげで、

[EDIT] は、私は私の現在のニーズを満たすソリューションを見つけました。私は次の開発者が将来の開発者に役立つことを願っています

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

[Images setObject:someObject forKey:someIndex]; 

[self didChangeValueForKey:@"someDictionary" withSetMutation:NSKeyValueUnionSetMutation usingObjects:[NSSet setWithObject:someObject]]; 
+6

+1です。良い質問/回答。質問に答えとして埋め込んだ答えを投稿する必要があります。あなたは現在、 "未回答"リストに入っています。あなた自身の質問への回答を投稿することは、実際にはSOに奨励されています。質問をするには、回答を投稿した直後と直後に回答することをお勧めします(他の人が遭遇する可能性のある問題があると仮定します)。 – Sam

答えて

3

質問に答えるだけです。 @DoubleDunkへのクレジットは

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

    [Images setObject:someObject forKey:someIndex]; 

    [self didChangeValueForKey:@"someDictionary" withSetMutation:NSKeyValueUnionSetMutation usingObjects:[NSSet setWithObject:someObject]]; 
関連する問題