iphone - nslocationwheninuseusagedescription - Leyendo datos de un archivo plist
info.plist xcode (2)
Estoy tratando de implementar una aplicación Guardar estado para mi iPhone.
Tengo un archivo plist llamado SaveData.plist y puedo leerlo a través de lo siguiente
NSString *pListPath2 = [bundle pathForResource:@"SaveData" ofType:@"plist"];
NSDictionary *dictionary2 = [[NSDictionary alloc] initWithContentsOfFile:pListPath2];
self.SaveData = dictionary2;
[dictionary release];
El archivo Plist tiene miembros
SavedGame, que es un booleano para indicar a la aplicación si realmente hay datos válidos aquí (si no salieron de la aplicación en medio de un juego, no quiero que sean un Punto de restauración).
Puntuación que es un NSNumber. Tiempo que es un NSNumber
Campo de juego que es una matriz de 16 elementos de NSNumbers
¿Cómo accedo a esos elementos dentro del NSDictionary?
Para establecer el valor Bool que puede utilizar:
[Dictionary setBool:TRUE forKey:@"preference"];
Para obtener el valor Bool puedes usar:
[Dictionary boolForKey:@"preference"];
Pruebe [NSDictionary objectForKey:]
Donde clave es el nombre del miembro en el plist.
Por ejemplo:
BOOL save = [[dictionary2 objectForKey:@"SavedGame"] boolValue];
almacenará el objeto almacenado en el plist para la clave SavedGame en un nuevo BOOL llamado guardar.
Me imagino que SavedGame Boolean está realmente almacenado en el NSDictionary
como NSNumber
, de ahí el uso de boolValue para obtener el valor booleano del NSNumber
.
Prueba esta documentación: Apple NSDictionary Reference .