Los Layouts de las vistas para aplicaciones Android, son un verdadero engorro.

Y no por la falta de objetos o métodos, sino por la sencilla razón de que Android está contenido en multitud de dispositivos con distintos tamaños de pantalla y, si se quiere hacer una buena aplicación, se han de tener en cuenta todos ellos (o al menos la gran mayoria).

Hace poco, Google sacó unas estadísticas bastante buenas sobre el uso y los terminales de Android. Aquí podemos ver la distribución de pantallas y densidades. Podríamos considerar una pantalla “normal” en aquellas que rondan las 4 pulgadas, y como vemos éstas son las que aglutinan más del 70% de las pantallas.

Que quiere decir esto? que la mayoría de terminales Android tienen pantallas de unas medidas más o menos similares. Pero claro, ¿que hacemos con las que son diferentes? Pues, si se quiere tener una aplicación robusta, se tienen que tener en cuenta, y aquí es cuando vienen los problemas.

En este sentido, hay varias maneras de hacer que nuestra aplicación sea compatible (en este caso, este término quiere decir que se adapta al tamaño de la pantalla) con los distintos tamaños de pantalla. Algunas de los métodos son:

  • Utilizar los diferentes Layouts que proporciona Android: Los layouts de Android son una herramienta muy potente para la contrucción de interficies. En éste caso, nos referimos sobretodo al FrameLayout. Éste layout posiciona los objetos (vistas) en el lugar que nosotros le digamos, y sea cual sea el tamaño de la pantalla, siempre lo posicionará en el mismo sitio. En este caso hay que tener en cuenta que posicionar un elemento en una pantalla de 4 pulgadas no es lo mismo que posicionarlo en una de 10, y aunque es una ayuda, para saber donde quedará finalmente la vista dentro del layout, hay que visualizarlo con los diferentes tamaños y ver como queda.
  • Crear diferentes layouts para cada tipo de pantalla: Android también nos la da opción de crear diferentes layouts para diferentes tipos de pantalla. Un ejemplo claro, es el tema de las tablets: lo que en un teléfono se debe presentar de manera reducida y compacta, en una tablet se pueden introducir nuevas vistas más acordes al tamaño y objetivo de las tablets.
  • Layout Weight: Una de las mejores características para trabajar con distintos tipos de pantalla. Gracias a esta característica, podemos adaptar cada vista (ya sea una imagen, un botón, un scroll…) a la pantalla otorgándole un “peso” dentro del layout. De esta manera, le indicamos al layout qué espacio libre debe ocupar esa vista respecto a las demás. Un peso de 1 para dos vistas significa que ambas se repartirán el espacio de la misma forma. Si el valor de una de ellas es menor a 1 (se utilizan valores entre 0 y 1)  ésta tendrá un factor de relleno superior a la que tiene peso 1 . Así conseguimos que , sin importarnos las medidas de la pantalla, nuestro layout se mantenga correcto y tal como lo diseñamos en cualquier tamaño o resolución.

Al principio puede parecer una tarea dificil (y lo es!) pero utilizando algunas de éstas técnicas se consiguen resultados muy satisfactorios.

A las malas, siempre podemos hacer un layout para cada tipo de pantalla o resolución 😉

 

, , , ,
Trackback

no comment untill now

Add your comment now