2

私はこのようなplistを持っています。私は通常、次のコード行を使用してアクセスします。

ここに画像の説明を入力

NSMutableDictionary *plistDict = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];
CGFloat redFloat = (CGFloat)[[plistDict objectForKey:@"red"] floatValue];

ただし、ネストされているため、BackgroundColour の赤色にアクセスするにはどうすればよいですか?

ありがとう。

4

3 に答える 3

3

絶対に:plist辞書に読み込むと、辞書の辞書が得られるため、BackgroundColour最初にアクセスする必要があります。

CGFloat redFloat = (CGFloat)[[[plistDict objectForKey:@"BackgroundColour"] objectForKey:@"red"] floatValue];

新しい構文では、より少ない文字数で記述できます。

CGFloat redFloat = (CGFloat)[plistDict[@"BackgroundColour"][@"red"] floatValue];
于 2013-08-19T13:33:33.707 に答える
1

valueForKeyPath:ショートカットにも使用できます:

CGFloat redFloat = (CGFloat)[[plistDict valueForKeyPath:@"BackgroundColour.red"] floatValue];
于 2013-08-19T13:35:00.837 に答える
0
CGFloat redFloat = [[[plistDict objectForKey:@"BackgroundColour"] objectForKey:@"red"] floatValue];
于 2013-08-19T13:35:12.353 に答える