objective framework entre diferencias objective-c iphone cocoa-touch xcode

objective-c - framework - objective c ios



Acceder a objetos en NSMutableDictionary por índice (2)

Puede obtener un NSArray que contenga las claves del objeto utilizando el método allKeys. A continuación, puede examinar eso por índice. Tenga en cuenta que el orden en que aparecen las teclas en la matriz es desconocido. Ejemplo:

NSMutableDictionary *dict; /* Create the dictionary. */ NSArray *keys = [dict allKeys]; id aKey = [keys objectAtIndex:0]; id anObject = [dict objectForKey:aKey];

EDITAR: En realidad, si entiendo lo que está tratando de hacer lo que quiere se hace fácilmente usando enumeración rápida, por ejemplo:

NSMutableDictionary *dict; /* Put stuff in dictionary. */ for (id key in dict) { id anObject = [dict objectForKey:key]; /* Do something with anObject. */ }

EDITAR: Corregido error tipográfico señalado por Marco.

Para mostrar las claves / valores de un NSMutableDictionary secuencialmente (en una vista de tabla), necesito acceder a ellos por índice. Si el acceso por índice pudiera dar la clave en ese índice, podría obtener el valor. ¿Hay alguna manera de hacer eso o una técnica diferente?


puede obtener una matriz de todas las claves con el método allKeys del diccionario; y luego puedes acceder a la matriz por índice. sin embargo, un diccionario en sí mismo no tiene un orden inherente, por lo que el orden de las claves que obtenga antes y después de un cambio en el diccionario puede ser completamente diferente