Pour afficher les clés/valeurs d'un NSMutableDictionary séquentiellement (dans une vue de table), je dois y accéder par index. Si l'accès par index pouvait donner la clé à cet index, je pourrais alors obtenir la valeur. Y a-t-il un moyen de le faire ou une technique différente?
Vous pouvez obtenir un NSArray contenant les clés de l'objet à l'aide de la méthode allKeys. Vous pouvez ensuite examiner cela par index. Notez que l'ordre dans lequel les clés apparaissent dans le tableau est inconnu. Exemple:
NSMutableDictionary *dict;
/* Create the dictionary. */
NSArray *keys = [dict allKeys];
id aKey = [keys objectAtIndex:0];
id anObject = [dict objectForKey:aKey];
EDIT: En fait, si je comprends ce que vous essayez de faire, ce que vous voulez se fait facilement en utilisant une énumération rapide, par exemple:
NSMutableDictionary *dict;
/* Put stuff in dictionary. */
for (id key in dict) {
id anObject = [dict objectForKey:key];
/* Do something with anObject. */
}
EDIT: Correction d'une faute de frappe signalée par Marco.
vous pouvez obtenir un tableau de toutes les clés avec la méthode allKeys
du dictionnaire; puis vous pouvez accéder au tableau par index. cependant, un dictionnaire en lui-même n'a pas d'ordre inhérent, donc l'ordre des clés que vous obtenez avant et après une modification du dictionnaire peut être complètement différent