根据打印输出从NSDictionary访问信息

时间:2013-01-30 03:18:34

标签: iphone ios cocoa-touch nsdictionary

我使用NSLog(@"%@", [filter attributes]);从字典中打印出以下内容:

CIAttributeFilterDisplayName = "Color Controls";
CIAttributeFilterName = CIColorControls;
inputBrightness =     {
    CIAttributeClass = NSNumber;
    CIAttributeDefault = 0;
    CIAttributeIdentity = 0;
    CIAttributeSliderMax = 1;
    CIAttributeSliderMin = "-1";
    CIAttributeType = CIAttributeTypeScalar;
};

我对NSDictionarys以及信息的组织方式感到有些困惑。如果我需要访问inputBrightness的属性,那么从字典中检索此格式的语法是什么?

2 个答案:

答案 0 :(得分:2)

如果您想从字典inputBrightness中检索filter,可以试试这个:

NSDictionary *inputBrightnessDict = filter[@"inputBrightness"]; //or [filter valueForKey:@"inputBrightness"];

这将返回另一个包含键值对CIAttributeClass的词典:NSNumberCIAttributeDefault0等。

您可以通过查看NSLog语句来确认filter[@"inputBrightness"]是字典。 {}中包含的键值对表示字典,其中()表示数组。

为了从inputBrightnessDict中检索任何值,您可以将其取为inputBrightnessDict[@"CIAttributeType"];

答案 1 :(得分:0)

[filter objectForKey:inputBrightness];

希望这会有所帮助..

字典与对象和键的概念一起工作。您可以使用键检索对象。关键对象成对出现。