ViewPager + FragmentPagerAdapter + Fragments (Teoría)


ViewPager es un elemento que se ha vuelto muy popular gracias a la implementación en Google Play antes Android Market, esta vista es muy usada gracias a la facilidad para cambiar entre secciones con tan solo deslizar ya sea a la izquierda o derecha.

Es un ViewGroup y su trabajo es de manera similar a AdapterView (ListView y Gallery). ViewPager no se encuentra dentro de las clases que Android tiene por default, esta clase llego junto con HoneyComb y fue agregada por los ingenieros de Google al paquete de compatibilidad para versiones anteriores.

Para agregar este paquete a algún proyecto es necesario instalar el paquete de compatibilidad con AVD Manager desde el repositorio de Android.

Una vez instalado dicho paquete es necesario que estando ubicado en la carpeta de nuestro proyecto dentro de eclipse, demos click derecho, ahora dentro de Android Tools damos click en Add Compatibility Library.

Una vez que se tenga configurado nuestro proyecto podemos hacer uso de esta clase dentro del archivo xml, para esto es necesario agregarla como una vista personalizada debido a que no forma parte del sistema base de android. Esto lo implementaremos un poco mas delante.

Para implementar ViewPager será necesario un adaptador, el cual se encargara de administrar todas las vistas.

Lo ideal será implementar una clase que se extienda de FragmentPagerAdapter la cual lanzara los Fragments (Vistas) necesarios.

Hablemos un poco de FragmnetPagerAdapter y de Fragments para entenderlos mejor y así saber de que estamos haciendo uso.

FragmenPagerAdapter es una implementación de PLagerAdapter que facilita el uso de Fragments dentro de un ViewPager. Esta versión de pager es comúnmente usada en el manejo de fragments estáticos parecido al manejo de Tabs.

Existe otra implementación de PagerAdapter llamada FragmentStatePagerAdapter que a diferencia de esta implementación FragmentPagerAdapter mantiene los fragments visitados en memoria mientras que FragmentStatePagerAdapter no guarda dichos fragments, es decir, cada que se visite cierto fragment será necesario volver a cargarlo, esta ultimo adaptador es usado para cuando un ViewPager cargue demasiados fragments y los recursos de memoria no sean suficientes para almacenar en memoria.

Ya hemos hablado mucho de Fragment, pero que es?, vamos a dar una rápida explicación para que quede todo claro, como se ha hecho con la explicacion de ViewPager y FragmenPagerAdapter.

Un Fragment representa una parte de la interface del usuario en un Activity. Se pueden combinar múltiples fragments dentro de un activity para construir un multipanel UI y reusar los fragments en múltiples actividades.

Para mas información puedes visitar los siguientes sitios para que veas a detalle cada elemento:

http://developer.android.com/reference/android/support/v4/view/ViewPager.html
http://developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html
http://developer.android.com/guide/topics/fundamentals/fragments.html

Comentarios

Entradas populares de este blog

Primeros pasos en Laravel

Instalando TypeScript paso a paso