Está en la página 1de 2

Imagina Formación Tema 7. Ejercicios.

EJERCICIOS TEMA 7

Ejercicio 1. Métodos de la multitarea.

En el siguiente ejercicio vamos a ver los métodos que tienen relación directa
con la multitarea y su utilidad.

Crea un proyecto basado en vista (Single View Application) e implementa los


siguientes métodos dentro del AppDelegate:

- (void)applicationWillResignActive:(UIApplication *)application {
! NSLog(@"applicationWillResignActive:");
}

- (void)applicationDidEnterBackground:(UIApplication *)application {
! NSLog(@"applicationDidEnterBackground:");
}

- (void)applicationWillEnterForeground:(UIApplication *)application {
! NSLog(@"applicationWillEnterForeground:");
}

- (void)applicationDidBecomeActive:(UIApplication *)application {
! NSLog(@"applicationDidBecomeActive:");
}

- (void)applicationWillTerminate:(UIApplication *)application {
! NSLog(@"applicationWillTerminate:");
}

Pasemos a analizar cada método:

• applicationWillResignActive
Se envía cuando la aplicación está a punto de transitar de estado activo a
estado inactivo. Puede ocurrir para ciertos tipos de interrupciones temporales
(tales como una llamada entrante o un SMS) o cuando el usuario sale de la
aplicación y comienza la transición al estado en segundo plano
(background).

Página 1 de 2
Imagina Formación Tema 7. Ejercicios.

• applicationDidEnterBackground
Utilizamos este método para liberar los recursos compartidos, salvar la
información del usuario, invalidar los temporizadores y guardar la información
necesaria para restaurar el estado en caso de que se cierre posteriormente.
Si nuestra aplicación soporta el modo background este método se llama en
lugar de applicationWillTerminate cuando el usuario sale de la aplicación.

• applicationWillEnterForeground
Se invoca como parte de la transición entre el segundo plano y el estado de
inactivo (aquí se deben deshacer la mayoría de cambios que se hicieron al
pasar a segundo plano).
• applicationDidBecomeActive
Reiniciamos cualquier tarea que se pausara (y que no hayamos empezado
en el método anterior) mientras la aplicación estaba inactiva. Si la aplicación
estaba en segundo plano, deberíamos refrescar la interfaz de usuario de
manera opcional.

• applicationWillTerminate
Se invoca cuando la aplicación está a punto de terminar.

Ampliación 1. Ejecuta código de control (por ejemplo, escribiendo en el


registro - NSLog) cuando la aplicación pase a segundo plano y cuando
vuelva a estar activa.

Ampliación 2. Actualiza la interfaz gráfica, para que muestre un mensaje


cuando la aplicación pase a activa.

Página 2 de 2

También podría gustarte