Búsqueda personalizada

Blog personal para aprender a programar en Android desde cero.

martes, 2 de marzo de 2010

Hello Views I

Continuando con los recursos de Android Labs, lo siguiente que vamos hacer es un HelloWorld para cada tipo de vista. En esta primera entrega veremos el LinearLayout.

LinearLayout
Este layout es una vista en grupo, la cuál muestra los subelementos de manera lineal.Si vamos a la api de  la clase LinearLayout vemos que hereda de la clase ViewGroup.
Vamos a seguir los pasos del tutorial:
  1. Crear el proyecto con Eclipse indicando la Activity HelloLinearLayout.
  2. Crear o copiar el contenido del fichero main.xml
  3. Cargar la vista en el método onCreate de nuestra Activity.
  4. Ejecutar
Como podemos ver en la pantalla tenemos dos layouts, uno horizontal mostrando 4 colores, y uno vertical mostrando 4 filas con texto:

    Ahora vamos a comentar lo importante, el fichero main.xml. Como decíamos, podemos identificar los dos layouts: 
    • <LinearLayout android:orientation="horizontal"...>...</LinearLayout>
    • <LinearLayout android:orientation="vertical"...>...</LinearLayout>
    Los atributos que configuran nuestros LinearLayout son:
    • android:orientation :indica la orientación del layout.
    • android:layout_width: indica el modo de relleno a lo ancho. fill_parent hace que ocupe todo el espacio que nos deja el elemento "padre".
    • android:layout_height: indica el modo de relleno a lo largo/alto.
    • android:layout_weight: indica la importancia del elemento dentro de la vista. El 0 es el valor menos importante. (más información en Common Layout Objects)
    Dentro de los LinearLayouts están los TextView que contienen el texto a enseñar, cosa que no es muy práctica pero que nos sirve para simplificar el ejemplo.

    Dudas
    Después de estar un rato jugando con el fichero main.xml y modificar los valores del atributo android:layout_weight de los TextView, he visto que efectivamente cambia el tamaño al variar los valores. Concretamente he puesto un 2 a los TextView rojo y amarillo, que han incrementado su tamaño pero no ocupan lo mismo, el amarillo ocupa más.
    No sé cuál es el motivo, ¿pero es por el tamaño del texto? yellow es más largo que red.



    No hay comentarios:

    Publicar un comentario