我有:
dict = [[NSMutableDictionary alloc] init]; //dict is NSMutableDictionary
然后我加他数字:
[dict setObject:@"SPOT1" forKey:[NSNumber numberWithInt:array[0] ]] ;
[dict setObject:@"SPOT2" forKey:[NSNumber numberWithInt:array[1] ]] ;
[dict setObject:@"SPOT3" forKey:[NSNumber numberWithInt:array[2] ]] ;
[dict setObject:@"SPOT4" forKey:[NSNumber numberWithInt:array[3] ]] ;
[dict setObject:@"SPOT5" forKey:[NSNumber numberWithInt:array[4] ]] ;
NSLog(@"dictionary:%@",dict);
array[]
有一个好的值。
NSLog
仅打印最后一个点5.(其余的丢失)
如果我试图发送dict
(使用此1值),使用NSNotificationCenter
我将其视为空!
所以有些人如何被释放。
为什么?
编辑NSNotificationCenter :
[[NSNotificationCenter defaultCenter] postNotificationName:@"DigitalArrived" object:nil userInfo:dict];//post
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getSensorsData:) name:@"DigitalArrived" object:nil]; //get
非常感谢。
答案 0 :(得分:2)
可能array
个元素都是一样的。 PL。检查一下。如果全部相同,那么密钥的值将替换为NSDictionary
,而不是添加新对。