Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Android / Introducción a Fragment

Introducción a Fragment

Autor jc mouse martes, abril 18, 2017

Un Fragment representa un comportamiento o una parte de la interfaz de usuario en una Activity. Puedes combinar múltiples fragmentos en una sola actividad para crear una IU multipanel y volver a usar un fragmento en múltiples actividades. Puedes pensar en un fragmento como una sección modular de una actividad que tiene su ciclo de vida propio, recibe sus propios eventos de entrada y que puedes agregar o quitar mientras la actividad se esté ejecutando (algo así como una «subactividad» que puedes volver a usar en diferentes actividades). [developer.android.com]

Es decir, un fragment nos permite:

La Modularidad: Es decir, dividir en partes más sencillas el código de una actividad compleja para un mejor entendimiento y mantenimiento y así convertir una sola actividad en un UI multi-panel.

modularidad

Reusabilidad: Es decir, reutilizar Fragments en más de una actividad reduciendo así el código y tiempo de desarrollo.

re usar codigo

Adaptabilidad: Representa una interfaz de usuario con diferentes fragmentos y diseños dependiendo de la orientación y tamaño de la pantalla.

adaptable software

A continuación un ejemplo de la creación y uso de un Fragment en una actividad utilizando Android Studio

Paso 1. El proyecto base

Creamos un nuevo proyecto en Android Studio con el nombre de «Ejemplo de Fragmento«, utilizaremos como min SDK API 16 Android 4.1 para tener una mayor compatibilidad con distintos dispositivos. A continuación elegimos un Empty Activity, dejamos el MainActivity y activity_main como están y finalmente presionamos el botón «finish» para crear el proyecto.

proyecto base

Paso 2. El Fragment

Android Studio cuenta con la opción de crear un Fragment y su archivo XML correspondiente de manera automática, sin embargo  eso nos agrega mucho código, código que por el momento no nos interesa conocer. Así que en este tutorial crearemos ambos archivos manualmente.

Creamos una nueva clase, que llamamos «MiFragmento«, a continuación agregamos un nuevo layout con el nombre de fragment_mifragmento. Nuestro proyecto actual a continuación.

fragment android

Abrimos la clase MiFragmento y reemplazamos por el siguiente código:

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

public class MiFragmento extends Fragment {

    /**
     * Nueva instancia del fragmento
     * */
    public static MiFragmento newInstance() {
        return new MiFragmento();
    }

    /**
     * La interfaz del fragmento
     * */
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_mifragmento, container, false);
    }

}

Ahora abrimos el archivo XML fragment_mifragmento y reemplazamos por:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="20dp"
android:background="#e45529"
tools:context="net.jc_mouse.ejemplodefragmento.MiFragmento">

<TextView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:textColor="#FFFFFF"
    android:text="HOLA MUNDO CRUEL!!! yo soy un Fragment :)" />

</FrameLayout>

En este archivo definimos el Fragment y su contenido, que en este caso consta de un solo TextView. Importante, en tools:context, indicamos la ruta de la clase MiFragmento a la cual este layout esta relacionado.

Paso 3. Agregando el Fragment a la actividad principal

Abrimos el archivo activity_main y reemplazamos el TextView que se crea por defecto por:

    <fragment
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/fragment"
        class="net.jc_mouse.ejemplodefragmento.MiFragmento"/>

es decir:

code xml

Donde en class indicamos la ruta de la clase MiFragmento

Ejecutamos y obtenemos:

sample fragment

enjoy!!!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Pruebas instrumentadas con Espresso

Pruebas instrumentadas con Espresso

Espresso es un framework de testing propiedad de Google que está dirigido a desarrolladores que creen que las pruebas au...

Crear ventana de ayuda sin JavaHelp

Crear ventana de ayuda sin JavaHelp

Java Help es (o era) una librería para java que permitía añadir ventanas de ayuda HTML a nuestros proyectos, al ser una...

Sistema de gestión de stock – El Controlador (Parte 5)

Sistema de gestión de stock – El Controlador (Parte 5)

Para terminar el tutorial, debemos unir tanto la VISTA como el MODELO y para eso esta el CONTROLADOR. o.O El controlador...

Contar segundos (Problema Resuelto)

Contar segundos (Problema Resuelto)

El problema dice asi: Se desea contar los segundos que se presiona un JButton en un formulario. Solución: Para resolver...

Envío de correo HTML con php

Envío de correo HTML con php

PHP cuenta con la función mail que nos permite el envío de correo desde nuestro servidor web bool mail ( string $to , st...

GraphADT: Clases para trabajar con grafos en java

GraphADT: Clases para trabajar con grafos en java

GraphADT es una proyecto alojado en github escrito en java que te permite trabajar con grafos, a la fecha de escribir es...

Comparte lo que sabes

Categorias

Últimas entradas

Melody.ml  es un aplicación online que usa la I.A (Inteligencia Artificial) para procesar archivos MP3 y separar en pist...

Small Basic es un lenguaje de programación propiedad de Microsoft creado especialmente para ayudar a los estudiantes a p...

Lorca Editor es una aplicación online creada por el desarrollador español Domingo Martin el cual tiene como objetivo el...

Eratóstenes era un matemático griego del siglo  III a.C. el cual ideó una manera rápida de obtener todos los números pri...

Herramientas

Generador de Enlaces a Whatsapp