2012-01-01 4 views
0

У меня есть объект NSDictonary, который я устанавливаю набор объектов в виде массива, который имеет соответствующий ключ следующим образом.Получить значения NSArray из NSDictonary

[dictionary setObject: [NSArray arrayWithObjects:@"Player3_Title", @"FirstName", @"LastName", @"Address3", @"SS3", nil] forKey: @"player3_infoKey"]; 

Что я хочу сделать, это вернуть эти объекты в массив. Когда я пытаюсь использовать следующий код, это то, что я получаю как результат.

stringsMutableArray = [[NSMutableArray alloc] initWithObjects:nil]; 
    [stringsMutableArray addObject:[dictionary objectForKey:@"player3_infoKey"]]; 

NSLog(@"stringsMutableArray has values: %d", [stringsMutableArray count]); 

NSLog(@"stringMutableArray: %@", [stringsMutableArray objectAtIndex:0]); 


OUTPUT: 
2012-01-01 08:50:29.869 test project[1165:f803] stringsMutableArray has values: 1 
2012-01-01 08:50:29.870 test project[1165:f803] stringMutableArray: (
    "Player3_Title", 
    FirstName, 
    LastName, 
    Address3, 
    SS3 
) 

Есть ли способ получить значения для этого ключа в массиве? Причина, по которой я хочу сделать это, - это то, что где-то в коде я хочу установить значения текстовой кнопки из этого массива.

FirstNameField1.text = [stringsMutableArray objectAtIndex:1]; 
LastNameField1.text = [stringsMutableArray objectAtIndex:2]; 

ответ

1

Я думаю, что вы просто хотите:

stringsMutableArray = [NSMutableArray arrayWithArray:[dictionary objectForKey:@"player3_infoKey"]]; 

Если вам не нужно быть изменчивым:

stringsArray = [dictionary objectForKey:@"player3_infoKey"]; 
+0

Спасибо !!! Это было именно то, что я пытался получить. –

0
NSArray *myArray = [dictionary objectForKey:@"player3_infoKey"]; 
[myArray objectAtIndex:0]; // Should return "Player3_Title" 
Смежные вопросы