martes, 14 de enero de 2014

Definición de interfaces

Los elementos de la interfaz gráfica de Usuario en Android siguen una estructura en la que se pueden encontrar dos tipos principales de componentes: View (elementos básicos) o ViewGroup (contenedores o grupos de elementos de tipo View o ViewGroup).

 Las interfaces de usuario en Android se pueden definir de dos formas, mediante archivo XML o mediante código Java directamente. Es más recomendable la utilización de XML, ya que resulta más sencillo de emplear, testar y configurar con el diseñador del SDK y además fomenta la separación de la lógica de aplicación de la capa de presentación. De cualquier forma a través de código habitualmente se establecen propiedades y eventos, o incluso existirá la posibilidad de definir nuevos elementos del interfaz  de forma dinámica.

Un primer paso para la definición del interfaz gráfico es la selección del Layout de la Activity. Un Layout es un ViewGroup que determina cómo se ubican y muestran los elementos en pantalla, existiendo en Android distintos tipos de Layout, entre los cuales destacan los de tipo Linear (muestra los elementos linealmente, en horizontal o vertical), Relative (muestra los elementos en posiciones relativas a otros elementos) o Frame (ubicación libre o superpuesta de elementos.

Sobre un layout se pueden colocar otros layouts anidados o directamente Views, que son los componentes de interacción con el usuario (también denominados widgets en algunos casos). Un View es cualquier elemento del interfaz gráfico que se incluye como parte de un layout para componer la visualización en pantalla de una Activity. Existe una gran cantidad de elementos de tipo View, siendo los más comunes los de tipo Button(botón), TextView (etiqueta), EditText (caja de texto), ListView (componente individual para mostrar elementos en una lista), …

Lo mínimo necesario

Un fichero XML de layout. Se localiza en la ruta res/layout:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

</LinearLayout>


Incluir en el layout los componentes gráficos con los atributos que definen su visualización y contenido predefinido:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
android:id="@+id/textView1"
android:text="uno"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/textView2"
android:text="dos"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
         

Cabe destacar del código anterior que los componentes visuales (ViewGroup o View) siempre tienen como obligatorios los atributos layout_width y layout_height para definir la colocación en pantalla. El atributo id solamente es necesario en el caso de necesitar referenciar al componente visual desde código o desde otro componente del propio XML.

Referencias




No hay comentarios:

Publicar un comentario