Establezca la zona horaria específica a nivel mundial para que la aplicación use
-
28-10-2019 - |
Pregunta
Estoy escribiendo una aplicación que necesita mostrar y calcular todas las fechas, tiempos, intervalos de tiempo, etc. a partir de una zona horaria específica en Europa. Es decir, si, digamos, en París, la aplicación funciona sin problemas ahora, pero si voy a Nueva York, la aplicación debe mostrar y funcionar exactamente como si todavía estuviera en París.
Ingenuamente, lo intenté (en el application: didFinishLaunchingWithOptions:
función)
[[NSCalendar currentCalendar] setTimeZone:[NSTimeZone timeZoneWithName:@"Europe/Paris"]];
Pero, por supuesto, eso no funciona, todos mis objetos NSDateFormatter todavía usan la zona horaria actual si no se dicen explícitamente lo contrario.
Entonces, lo que me gustaría saber es:
¿Hay alguna forma de hacer cumplir globalmente una zona horaria en una aplicación? Prefiero no pasar por todo mi código y arreglar cada formateador de fecha y selección de fecha, etc., si hay otra manera.
Voluntad
[NSTimeZone timeZoneWithName:@"Europe/Paris"]
¿Cambiar correctamente entre CET y CEST?
¡Gracias por delante!
Solución
Puedes usar el método + (void)setDefaultTimeZone:(NSTimeZone *)aTimeZone
de la clase NSTimeZone
.