Los Fragmentos en Android, son secciones reutilizables de la interfaz de usuario, estos fragments tienen su propio ciclo de vida tal cual lo tienen las actividades.

Dentro de una actividad pueden haber varios fragmentos, siempre van asignados a la actividad y su ciclo de vida esta ligada al ciclo de vida de la Actividad o Activity en el que se insertan, pueden agregarse o quitarse mientras el Activity esta activo.

Un fragment, representa un comportamiento o una parte de la interfaz de usuario que se implementa en el Activity, así como tiene su propio ciclo de vida, también tienes sus propios eventos.

fragment-ejemplo

En la imagen anterior podemos observar como podemos hacer el manejo de Fragmentos en Android, observamos que tenemos dos Fragments, A y B, la primera vista se refleja como integramos ambos fragmentos en una Tablet bajo una misma Activity, en la segunda vista se refleja como se integran cada fragmento pero en dos Actividades separadas A y B, respectivamente.

Conoce sobre el manejo de Fragmentos en Android, agrega secciones a tu interfaz de usuario. #android #programacion Clic para tuitear

¿Como se hace el Manejo de fragmentos en Android?

  • Android, nos pemite definir o crear diferentes versiones del XML de interfáz gráfica, para distintos tamaños de pantalla.
  • Podemos crear las piezas o secciones de nuestra interfaz de usuario y combinarlas distinto, de acuerdo al tamaño de pantalla de nuestro dispositivo.
  • Las piezas o secciones que mencionamos son lo que conocemos como Fragmentos o Fragments.

Creación de un Fragment

  1. Se diseña la interfaz de usuario en un archivo XML, se utiliza el mismo recurso que para una Actividad.
  2. Implementamos el código Java, extendemos de la clase Fragment (o una de sus subclases), implementamos el método onCreateView, este método nos provee de todos los objetos necesarios para cargar la interfaz de usuario y devolverla como un resultado del método.
  3. Añadir el Fragment a un Activity, esto puede ser en modo de diseño o en modo de ejecución.

Mostrando un Fragment

  • Pordemos diseñas un Fragment al diseñar el XML de un Activity.
  • No nos permite luego reemplazarlo dinámicamente.
  • Se utiliza mas que nada para componentes (Ejm.: Google Maps).

fragment-activity

También podemos añadir un Fragment dinámicamente utilizando programación.

  • Utilizamos la clase FragmentManager y FragmentTransaction.
  • Podemos entonces añadir, quitar, y/o reemplazar los Fragments de acuerdo a lo requerido por nuestra aplicación.
  • Se utilizan métodos add, remove, replace y commit de la clase FragmentTransaction para el manejo de Fragmentos en Android.

fragment-vista

Ciclo de vida de un Fragment

Como ya comentamos anteriormente, esta ligado al ciclo de vida de la Activity que contiene el Fragment (que a su vez es controlado por el sistema).

Al igual que con las Activities, sobreescribimos los métodos de la clase Fragment para ejecutar nuestro código en determinados puntos del ciclo de vida.

fragment-ciclo-de-vida

Los puntos mas importantes a tener en cuenta dentro del ciclo de vida de un Fragment:

onCreateView: Llamado al momento de dibujar la interfaz gráfica del Fragment por primera vez. Siempre debemos implementarlo. Debemos devolver como resultado un View que representa la interfaz gráfica ya armada.

onPause: Llamado cuando un Fragment está siendo abandonado por el usuario. Aquí debemos almacenar el estado de cualquier información que necesitemos conservar, porque posiblemente el Fragment no se vuelva a mostrar (y sea descartado por el sistema).

Comunicación Fragment – Activity

  • Fragment -> Activity: getActivity().
  • Activity -> Fragment: findFragmentById().
  • Para capturar eventos de usuario (click, selección de items), se recomienda que el Fragment reciba los eventos de bajo nivel (click, elemento seleccionado), que el Activity reciba evento de alto nivel enviados por el Fragment.

fragment-comunicacion-activity

Ejemplo de aplicación.

A veces es mejor verlo en práctica para entender el manejo de Fragmentos en Android, a continuación el video publicado en nuestro cana de YouTube.

Palabras finales.

Recuerda que puedes aprender más sobre Fragmentos y otros temas en Android con nuestro curso desde CERO de Programación en Android.

Si el artículo te pareció interesante no olvides compartirlo en tus redes sociales, ya que eso nos ayuda a llegar a mas personas y además nos motiva a seguir creando más información para la comunidad.

No olvides suscribirte al boletín de noticias para estar atento a las nuevas publicaciones y lo recibas en tu correo electrónico.

Acerca del Autor

Grover Vásquez

Profesional de TI con más de 10 años de experiencia, en el campo de las Tecnologías de la Información, Programación y Seguridad de la Información. Instructor Online y presencial de cursos de programación de aplicaciones.

Ver Artículos