FRAGMENTOS
1.
Fragmentos
1.1.
Definición
Un fragment no puede considerarse
ni un control ni un contenedor, aunque se parecería más a lo segundo. Un
fragment podría definirse como una porción de la interfaz de usuario que puede
añadirse o eliminarse de la interfaz de forma independiente al resto de
elementos de la actividad, y que por supuesto puede reutilizarse en otras
actividades. Esto, aunque en principio puede parecer algo trivial, nos va a
permitir poder dividir nuestra interfaz en varias porciones de forma que
podamos diseñar diversas configuraciones de pantalla, dependiendo de su tamaño
y orientación, sin tener que duplicar código en ningún momento, sino tan sólo
utilizando o no los distintos fragmentos para cada una de las posibles
configuraciones.
1.2.
Tipo de Fragmentos
1.2.1.
Fragmentos Estáticos
Un Fragment estático o final es
aquel que se declara en el fichero XML de la carpeta Layout directamente. Este
Fragment tendrá la cualidad de no ser eliminado o sustituido por nada -De lo
contrario tendremos errores.
1.2.2.
Fragmentos Dinámicos
Un Fragment dinámico es el que
se crea desde código Java y se asocia a un ViewGroup (Se recomienda el uso de
FrameLayout). Éste sí que se podrá eliminar o sustituir por otro Fragment u
otro contenido.
Tenemos el listado, que es algo que siempre va a ser igual (podrán aumentar o disminuir los elementos contenidos en el listado, pero siempre será un listado), por lo que podemos declarar su fragment en el XML, es estático. Y luego tenemos la parte derecha del detalle, dependiendo del seleccionado en el listado mostrará el detalle de un pájaro (descripción, nombre y foto) diferente. Con lo que cada detalle de cada pájaro tendrá su propio Fragment -si los equiparamos a las hojas de un libro, pasar cada Fragment equivaldría a pasar las hojas del libro de pájaros- por lo que nos interesa que estos Fragments sean dinámicos. Lo que nos dibujará el siguiente Layout con un Fragment estático en XML y un FrameLayout que contendrá a los Fragments dinámicos.
Tenemos el listado, que es algo que siempre va a ser igual (podrán aumentar o disminuir los elementos contenidos en el listado, pero siempre será un listado), por lo que podemos declarar su fragment en el XML, es estático. Y luego tenemos la parte derecha del detalle, dependiendo del seleccionado en el listado mostrará el detalle de un pájaro (descripción, nombre y foto) diferente. Con lo que cada detalle de cada pájaro tendrá su propio Fragment -si los equiparamos a las hojas de un libro, pasar cada Fragment equivaldría a pasar las hojas del libro de pájaros- por lo que nos interesa que estos Fragments sean dinámicos. Lo que nos dibujará el siguiente Layout con un Fragment estático en XML y un FrameLayout que contendrá a los Fragments dinámicos.
1.3. Ciclo Vital
Aunque el ciclo de vida de un
Fragmento está ligada a su actividad propietaria, que tiene su propio ciclo de
vida de las arrugas en la actividad estándar. Incluye métodos básicos actividad
del ciclo de vida tales como onResume (), pero también es importante son los
métodos relacionados con la interacción con la generación y la actividad de la interfaz
de usuario.
El núcleo de la serie de métodos
de ciclo de vida que son llamados a traer un fragmento de hasta reanudado
estado (la interacción con el usuario) son:
1.
onAttach (Actividad) llamada una vez que el
fragmento se asocia con su actividad.
2.
onCreate (Bundle) llamó a hacer la creación
inicial del fragmento.
3.
onCreateView (LayoutInflater, ViewGroup, Bulto)
crea y devuelve la jerarquía vista asociada con el fragmento.
4.
onActivityCreated (Bundle) dice el fragmento que
su actividad ha completado su propia Activity.onCreate ().
5.
onViewStateRestored (Bundle) dice el fragmento
que todo el estado guardado de su jerarquía de vistas ha sido restaurada.
6.
onStart () hace que el fragmento visible para el
usuario (sobre la base de su actividad que contiene se inicia).
7.
onResume () hace que el fragmento de empezar a
interactuar con el usuario (basado en ser reanudado su actividad que contiene).
Como ya no se está utilizando un
fragmento, que pasa por una serie de devoluciones de llamada inversa:
1.
onPause () fragmento ya no está interactuando
con el usuario, ya sea debido a que su actividad se está en pausa o una
operación fragmento está modificando en la actividad.
2.
onStop () fragmento ya no es visible para el
usuario, ya sea debido a que su actividad está siendo parado o una operación de
fragmento está modificando en la actividad.
3.
onDestroyView () permite que el fragmento de
limpiar los recursos asociados con su punto de vista.
4.
OnDestroy () llamada a hacer la limpieza final
del estado del fragmento.
0 comentarios:
Publicar un comentario