从NSMutableDictionary中分离数据

时间:2015-10-14 23:47:57

标签: ios objective-c nsmutabledictionary

这里的愿望是从CLBeacon属性中打印单个属性而不是如下所示生成的调试字符串,但是编译器不理解,因为它没有强制转换为正确的类型。

这是我正在使用的代码

for(NSString *beacon in [self->detectBeacons allKeys]) {
    NSLog(@"Här ska det visas lite data: %@",[self->detectBeacons objectForKey:beacon]);
}

及其生成此行

("CLBeacon (uuid:<__NSConcreteUUID 0x14de6e060> FDA50693-A4E2-4FB1-AFCF-C6EB07647825, major:10004, minor:57607, proximity:1 +/- 0.01m, rssi:-28)",
"CLBeacon (uuid:<__NSConcreteUUID 0x14de02310> FDA50693-A4E2-4FB1-AFCF-C6EB07647825, major:10004, minor:54480, proximity:1 +/- 0.01m, rssi:-31)")

1 个答案:

答案 0 :(得分:0)

事实证明,这里的愿望是访问单个属性而不是打印整个调试字符串。

使用NSLog("proximityUUID: %@",((CLBeacon*)[self->detectBeacons objectForKey:beacon]). proximityUUID );

效率更高

问题是你的项目没有在字典中输入。 将其转换为CLBeacon并访问proximityUUID属性。

NSLog("proximityUUID: %@",((CLBeacon*)[ [self->detectBeacons objectForKey:beacon]) firstObject].proximityUUID );

或者在你的情况下是第一个对象,它不清楚,但你的项目是一个数组。

{{1}}