2011-02-20 5 views
0

J'ai un dictionnaire des dictionnaires de tableau d'objets. Tout comme ceci:Obtenir les clés d'un dictionnaire

" A

... Alabama

...... tableau d'objets

...

L

.. .Londres

...... Tableau d'objets

... Lisbonne

...... tableau d'objets

"

Comment puis-je obtenir les clés du dictionnaire L, je veux dire, comment puis-je" London , Lisbonne, ... "?

J'ai besoin de remplir une tableView avec les citys, et, quand didSelectRow ..., les affiche sur une carte. Les montrer sur une carte - pas de problème, mais j'ai du mal à obtenir les clés pour peupler la tableView.

Merci beaucoup,

RL

Répondre

1
NSArray *KeysForL = [[parentDictionary objectForKey:@"L"] allKeys]; 

Notez que l'ordre de tri de ce tableau est défini. Vous devriez probablement le trier avant de l'utiliser dans une vue de table.

0

Une autre approche est ce

//This will print out all your cities for "L" 

NSEnumerator *keyEnumerator = [[mainDictionary objectForKey:@"L"] keyEnumerator]; 
while (NSString *currentKey = [keyEnumerator nextObject]) 
{ 
    NSLog(@"%@", currentKey); 
} 

plus efficace car il ne sera pas copier toutes vos clés au tableau renvoyé par la méthode AllKeys mais je suppose que généralement il ne sera pas question

+1

L'OP a besoin de remplir une table, et les tables sont rafraîchies dans un ordre essentiellement d'accès aléatoire, donc si utile dans les boucles, keyEnumerator est moins utile dans ce cas. – Bogatyr

Questions connexes