Pregunta

Mi aplicación para el iPhone tiene algunas opciones de configuración que es probable que cambie con frecuencia los usuarios. Me gustaría saber si hay alguna manera sugerida de manejar este tipo de configuración (lectura y guardarlos). En los sitios de Apple sólo encontré un tutorial sobre la integración de los valores de la aplicación con la aplicación de configuración ( enlace ) pero no quieren un usuario salir de mi aplicación por lo que sólo podría cambiar la opción.

¿Hay algún mecanismo por defecto para manejar este tipo de configuración de aplicación en sí o tengo para implementar una solución de mi propia?

¿Fue útil?

Solución

El mejor y más fácil de almacenar la configuración en el iPhone es a través de NSUserDefaults. le evita tener que lidiar con el sistema de archivos o plists o cualquiera de esas otras cosas.

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

NSString *storedVal = @"This is what you want to save";
NSString *key = @"storedVal"; // the key for the data

[defaults setObject:storedVal forKey:key];
[defaults synchronize]; // this method is optional


// Get the results out
NSString *results = [defaults stringForKey:key];

Esto es lo que Apple dice sobre los tipos de objetos que puede almacenar en los valores predeterminados

  

Un objeto predeterminado debe ser una propiedad   lista, es decir, una instancia de (o para   colecciones una combinación de casos   de): NSData, NSString, NSNumber,   NSDate, NSArray o NSDictionary. Si   desea almacenar cualquier otro tipo de   objeto, se debe normalmente archivar   para crear una instancia de NSData.

Hay algunas advertencias más, como si almacena una NSDictionary los valores clave deben ser cadenas.

Otros consejos

Si usted está buscando un interfaz de usuario para editar la configuración de dentro de la aplicación, echa un vistazo a InAppSettingsKit en http: // www.inappsettingskit.com

Archivo y la Guía de redes del iPhone Developer Connection. Se explicará cómo obtener la ruta de acceso para las diferentes ubicaciones predefinidas en la zona de pruebas. Me gustaría recomendar el uso de un NSDictionary para almacenar sus preferencias que pueden ser fácilmente guardados en el sistema de archivos y transformar en un plist.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top