2

オブジェクトをNSMutableArray入力しました。たとえば、2 番目のアイテムを取得して、その辞書を変更するNSMutableDictionaryにはどうすればよいでしょうか。NSMutableArray

NSMutableArray *tempArr = [[NSMutableArray alloc]init];
NSMutableDictionary *al = [[NSMutableDictionary alloc]init];

for(int i=0; i<[theArray count]; i++) {
    id object = [theArray objectAtIndex: i];
    id object2 = @"0";
    [al  setObject:object forKey:@"titles"];
    [al setObject:object2 forKey:@"levels"];
    [tempArr addObject:al];
}


NSLog(@"fubar %@", [tempArr objectAtIndex:2]);

したがって、キーで NSDictionary にアクセスし、キーの値を変更する必要があります。ありがとうございました

4

5 に答える 5

2

あなたが発見したように、配列内のオブジェクトは-objectAtIndex:メソッド onを使用してアクセスされNSArrayます。

同様に、辞書内のオブジェクトは-objectForKey:onを使用したアクセスNSDictionaryです。

やりたいことをするには、次のように、他の呼び出しと同じようにアクセスをスタックします。

NSLog(@"fubar %@", [[tempArr objectAtIndex:2] objectForKey:@"titles"]);

のインデックスNSArrayは 1 ではなく 0 から始まることに注意してください。

値を変更するには、同じ原則が適用されます。

[[tmpArr objectAtIndex:2] setObject:titlesArray forKey:@"titles"];
于 2013-10-21T09:15:34.883 に答える
0

NSMutableDictionaryストアの値を に置き換えたい場合は、次のNSMutableArrayコードを使用します。

NSMutableArray *array = [[NSMutableArray alloc] initWithObjects:[NSMutableDictionary dictionaryWithObjectsAndKeys:@"value1",@"key1",nil],[NSMutableDictionary dictionaryWithObjectsAndKeys:@"value2",@"key2",nil], nil];

//Edit second value
NSMutableDictionary *dict = (NSMutableDictionary *)[array objectAtIndex:1];
[dict setObject:@"value3" forKey:@"key2"];
于 2013-10-21T09:14:02.373 に答える
0

これを試して :

NSMutableDictionary *dict = [NSMutableDictionary dictionary];
    for(dict in tempArr)
    {

       //you can access dictionay here and set the value 
    }
于 2013-10-21T09:23:25.387 に答える