3

ここで明らかな何かが欠けているように感じますが、私はobj-cに慣れていないので、おそらくそれは私が気付いていないものにすぎません。

実行時に例外エラーが発生します...

NSDictionaryI 0x9d384d0> setValue:forUndefinedKey:]:このクラスは、キーoverObjectのキー値コーディングに準拠していません。

このコードの4行目...

NSDictionary *tempDictionary = [[NSDictionary alloc] init];

    Boolean overObjectYES = NO;
    Boolean overObjectNo = NO;

    [tempDictionary setValue:[NSNumber numberWithBool:overObjectYES] forKey:@"overObject"];
4

3 に答える 3

9

NSDictionaryこれは、あなたが意味するときに使用することと、一般的により適切であると考えられるときNSMutableDictionaryにメッセージを送信することの組み合わせだと思います. 詳細については、この質問を参照してください。setValuesetObject

NSDictionary setValue:forKey: -- 「このクラスはキーのキー値コーディングに準拠していません」を取得する

于 2012-11-15T04:03:02.453 に答える
3

変更可能な辞書tempDictionaryになるということですか?その場合は、次のように宣言します。

NSMutableDictionary *tempDictionary = [[NSMutableDictionary alloc] init];
于 2012-11-15T04:01:50.567 に答える
1

を使用しNSMutableDictionaryます。NSDictionary編集できません。

NSMutableDictionary *tempDictionary = [[NSMutableDictionary alloc] init];
Boolean overObjectYES = NO;
Boolean overObjectNo = NO;

[tempDictionary setValue:[NSNumber numberWithBool:overObjectYES] forKey:@"overObject"];
于 2012-11-15T04:00:02.490 に答える