Podremos lanzar nuevas actividades
desde otras actividades, de tal forma
que la actividad lanzadora es
pausada, pero el sistema la mantiene
en memoria en una cola denominada
back stack.
Actividad es uno de los componentes de una
aplicación, concretamente el encargado de ofrecer
una pantalla con la que los usuarios pueden
interactuar, con el único objetivo de hacer algo. una
aplicación suele estar compuesta por varias
actividades que están vinculadas unas a otras de
alguna forma. Generalmente, toda aplicación tiene
una actividad considerada la actividad principal
(main), la cual es la que se muestra al usuario cuando
se abre la aplicación por primera vez.
Podremos lanzar nuevas actividades
desde otras actividades, de tal forma
que la actividad lanzadora es
pausada, pero el sistema la mantiene
en memoria en una cola denominada
back stack.
Back stack : consiste en una cola tipo LIFO (Last In, First Out), o lo
que es lo mismo, la última actividad que fue añadida, será la primera
en la cola. Así, cuando el usuario pulse el botón atrás (Back), el
sistema nos quitará la actividad actual y nos mostrará justo la
anterior en la cola, aunque este comportamiento por defecto puede
ser modificado según nuestro interés.
Para crear una actividad, basta con que creemos una clase que
herede de la clase Activity. Además de heredar de esta clase,
deberemos sobreescribir algunos métodos que pertenecen al
ciclo de vida de la actividad.
estados:
• Resumed: En este estado, la
actividad está en primer plano para el
sistema
• Paused: La actividad está aún visible,
pero el foco está en otro componente
que está por encima de ésta
• Stopped: La actividad aún está viva, pero
está totalmente oculta
3 procesos principales en la actividad:
• Tiempo de vida completo: Entre
onCreate y onDestroy
• Tiempo de vida en primer plano: Entre
onResume y onPause
• Tiempo de vida visible: Entre
onStart y onStop
¿Cómo lanzar una actividad?
Para ello tenemos dos posibles formas, pero siempre mediante el uso de Intent y el método
startActivity: Implícita: Sabemos qué actividad vamos a lanzar, y suele ser una perteneciente a
nuestra propia aplicación. Explícita: Sabemos la funcionalidad que queremos hacer, pero al no
conocer qué actividades pueden hacerlo (de nuestra aplicación o de otras), delegamos en el sistema
operativo. Éste, según sus categorías, acciones… buscará las posibilidades y nos la dará a elegir.