Iniciado por
cdrman
Hola, buenas noches a todos.
Tengo varias dudas respecto a la programación con Xcode e iOS.
1.) Estoy construyendo una aplicación que está casi todo el tiempo accediendo a una base de datos Sqlite. He estado mirando en foros y hay gente que dice que es mejor dejar la conexión abierta y cerrarla en el applicationWillTerminate que no estar abriendo y cerrando constantemente las conexiones en cada consulta o inserción. Yo prefiero hacerlo del segundo modo, es decir, abriendo y cerrando según convenga. ¿Vosotros qué creéis que es más óptimo?
2.) En una de las tablas cuando se hace una inserción hay un campo que se inserta de forma automática con un CURRENT_TIMESTAMP. Hasta ahí correcto, lo inserta perfectamente. El problema viene cuando lo muestro por pantalla. ¿Cuál sería la mejor forma de mostrarlo en pantalla? La mayoría de usuarios que ejecutarán la aplicación no creo que se aclaren con lo del GMT +02 y me gustaría mostrarles la fecha sin GMT, es decir, en nuestro caso, sumarle ya de forma automática las dos horas. ¿Es posible hacerlo automáticamente con el NSDateFormatter?
No sé si me he explicado demasiado bien...
Muchas gracias.
1) Segundo modo es mucho mejor, porque imagínate que vas a segundo plano. Ahí no pasas por el willTerminate. Y dejas la conexión abierta? Aparte, imagínate que se cuelga o algo, nadie te garantiza en este caso que se pase por el willTerminate
2) Sí, se puede hacer usando NSDateFormatter, por ejemplo:
Código:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZ"];
[dateFormatter setTimeZone:[NSTimeZone localTimeZone]];
NSDate *date = [dateFormatter dateFromString:@"2012-0-05T16:28:22-0700"];
En setDateFormat pones el formato del timestamp que creo que no es ese (lo he sacado de un ejemplo de internet) y en setTimeZone es donde se le pasa la zona horaria en la que estás, así que al pasarlo a NSDate ya te hace la conversión automáticamente.
EDIT: Sólo como consejo, cuando tengas dudas de este tipo y no sepas donde buscar, stackoverflow es tu amigo.
Marcadores