2011-08-09 17 views
6

Estoy teniendo dificultades para localizar una aplicación. Necesita ser localizado en farsi (persa iraní). No solo eso, necesita usar el Calendario Solar, cuando se selecciona fa_IR como una localización.iPhone/iOS: ¿Cómo puedo saber qué localización está usando el teléfono en tiempo de ejecución?

El sistema operativo tiene un calendario persa. No es problema para mí usarlo, pero necesito saber que se ha seleccionado la localización fa_IR. Para colmo de males, no puedo probar esta configuración regional en EE. UU., Ya que parece que AT & T no lo permite como localización. Tengo que enviarlo a Irán, que es un PItA real.

Estoy teniendo el demonio de un tiempo para descubrir la localización en tiempo de ejecución. Hay un montón de cosas para acceder a las banderas de paquetes, pero no puedo encontrar nada para obtener información de tiempo de ejecución.

Soy bastante verde en la programación de iOS, por lo que todavía tengo que determinar qué M a RTFM. He estado buscando en los documentos con muchas palabras clave, fue en vano.

¿Alguien puede ayudar con lo que parece ser una pregunta absurdamente fácil?

Respuesta

10

NSLocale tendrá la información de configuración regional que necesita. Tenga en cuenta que las clases básicas son compatibles con las configuraciones sugeridas, como el reloj de 24 horas y la información de configuración regional.

NSLog(@"%@", [[NSLocale currentLocale] localeIdentifier]); 
+0

¡Gracias! ¡Estoy en ello! –

6
NSArray *localizations = [[NSBundle mainBundle] preferredLocalizations]; 
for (NSString *string in localizations) { 
    NSLog(@"Localization: %@", string); 
} 

El código anterior debería ser útil en la búsqueda de la localización actual.

NSLog(@"%@", [[NSLocale currentLocale] localeIdentifier]); 

NSLocale vuelve en_US, mientras que los rendimientos NSBundlesv, lo que es correcto para mi teléfono.

Cuestiones relacionadas