NSDictionary を照会する適切な、または最も効率的な方法について混乱しています。辞書によって設定された可変配列があります。このように見えます...
<array>
<dict>
<key>title</key>
<string>entry1</string>
<key>checkedState</key>
<string>NO</string>
</dict>
<dict>
<key>title</key>
<string>accessoriesImage</string>
<key>checkedState</key>
<string>NO</string>
</dict>
<dict>
<key>title</key>
<string>activationCharge</string>
<key>checkedState</key>
<string>NO</string>
</dict>
また、いくつかの静的エントリがあります。
static NSString *kTitleKey = @"title";
static NSString *kCheckedState = @"checkedState";
そして、私がしたいのは、タイトルをテストし、それがcheckedStateであり、それに基づいて行動することです。つまり、Title = entry1 で、checkedState = NO の場合、checkedState を YES に設定します。このようなものですが、これは間違っています - 私はそれが間違っていることを知っています - 私はそれを理解していません.
if [([[attributesArray valueForKey:kTitleKey] isEqualToString:@"All"] && [[attributesArray valueForKey:kCheckedState] isEqualToString:@"NO"]) {
[attributesArray setValue:kCheckedState = @"NO" forKey:@"entry1"];
}
はい、Apple のドキュメントでキーと値のコーディングを見てきましたが、理解できません。これが私がここにいる理由です。:)