ios - 我的 NSDictionary 不知怎么的一个键有多个值

标签 ios nsdictionary nsmutabledictionary

我一直在尝试调试我的代码的问题,并且刚刚发现了一个奇怪的现象。触发断点时在调试区发现了这个:

enter image description here

我观察到此键有多个值是否正确:@"6898173"??

造成这种情况的可能原因是什么?我不使用字符串文字设置这些键值对,而是通过获取从 GKSession 传输中检索和解码的字符串的子字符串。

我仍然把它放在 xcode 的调试区域中,以防万一还有其他可能有帮助的东西。

编辑:

根据请求,以下是创建两个字符串之一的代码(另一个是在较早的时间创建的):

[carForPeerID setObject:[[MultiScreenRacerCarView alloc] initWithImage:[UIImage imageNamed:@"simple-travel-car-top_view"] trackNumber:[[[NSString stringWithUTF8String:data.bytes] substringWithRange:range] intValue]] forKey:[[NSString stringWithUTF8String:[data bytes]] substringFromIndex:9]];

data 中的字符串可能如下所示: car00.0146898173

编辑:

发送数据的代码:

[self.currentSession sendData:[[NSString stringWithFormat:@"car%i%@%@", [(MultiScreenRacerCarView *)[carForPeerID objectForKey:peerID] trackNumber], speed, [(MultiScreenRacerCarView *)[carForPeerID objectForKey:peerID] owner]] dataUsingEncoding:NSUTF8StringEncoding] toPeers:@[(NSString *)[peersInOrder objectAtIndex:(self.myOrderNumber + 1)]] withDataMode:GKSendDataReliable error:nil];

抱歉,它很难阅读。它只有一行。

最佳答案

您看到的是一个调试器“feechure”。当您有一个可变字典并修改它时,调试器可能不会向您显示对象的正确 View 。

要可靠地显示 NSMutableArrayNSMutableDictionary 的内容,请切换到控制台并输入 po carForPeerID

关于ios - 我的 NSDictionary 不知怎么的一个键有多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18369713/

相关文章:

ios - 使用 VFR 阅读器时,UIToolbar 中不显示任何工具栏项

ios - 'NSInvalidArgumentException '-[NSTaggedPointerString count]: unrecognized selector sent to instance 0xa006162696a614e6'

ios - plist、数组和字典的元素之间是什么关系?

ios - NSCoding decodeObject 始终为零

ios - UI图像描述

iphone - 当我链接 IBoutlets/IBActions 时,IB 在幕后做什么?

objective-c - NSDictionary objectForKey 返回值

ios - 使用 GooglePlus 类从 NSDictionary 获取键值

ios - 使用其基础对象值更新 NSDictionary 值

objective-c - NSMutableDictionary setObject : forKey - crashes 问题