2011-07-19 4 views
0

У меня есть массив, как это.Замена значения массива из aray внутри массива в iphone

{ 
    id = 1; 
    user = { 
      name="ABC" 
      } 
}, 
{ 

    id = 2; 
    user = { 
      name="XYZ" 
      } 
},  

Мне нужно изменить идентификатор с номерами 5 и 6 и назвать «asd» и «fgh». Мое определение массива здесь.

 myArray=[[NSMutableArray alloc]initWithArray:statuses]; 

И вот мой подход для chaning «id».

[[myArray objectAtIndex:0]replaceObjectAtIndex:0 withObject:@"5"]; 
[[myArray objectAtIndex:0]replaceObjectAtIndex:0 withObject:@"6"]; 

Но я получаю следующее согласие.

[__NSCFDictionary replaceObjectAtIndex:withObject:]: unrecognized selector sent to instance 0x6511810 
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFDictionary replaceObjectAtIndex:withObject:]: unrecognized selector sent to instance 0x6511810' 

ответ

0

myArray, похоже, NSArray, который является неизменным.

Как вы объявили myArray?

РЕДАКТИРОВАТЬ:

First: 

туАггау = [статусы mutableCopy];

Второе:

[[myArray objectAtIndex:0] setObject:@"5" forKey:@"id"]; 
[[myArray objectAtIndex:1] setObject:@"6" forKey:@"id"]; 
[[[myArray objectAtIndex:0] objectForKey:@"user"] setObject:@"asd" forKey:@"name"]; 
[[[myArray objectAtIndex:1] objectForKey:@"user"] setObject:@"fgh" forKey:@"name"]; 
+0

Пожалуйста, проверьте, я просто редактируется. – user851954

+0

Попробуйте вместо этого: myArray = [statuses mutableCopy]; – Daniel

+0

Я изменил, но все тот же вопрос. – user851954

Смежные вопросы