Usuario:ManuelRomero/Android/Interfaz/elementos

De WikiEducator
Saltar a: navegación, buscar



Introducción

  • Si hablamos de aplicaciones android para móviles y tablets, casi inevitablemente estamos hablando de aplicaciones de interfaz gráfica.
  • Es una parte muy importante y muy trabajada para enfocar el desarrollo.

android.view.View

  • La clase base para construir elementos gráficos es android.view.View
  • Representa un área rectangular en la pantalla
  • Es la clase base para la mayoría de los controles y diseños de interfaz de usuario dentro de Android SDK

android.widget

  • Referencia
http://developer.android.com/reference/android/widget/package-summary.html
  • Es un paquete que contiene la mayoría de los los controles gráficos para usar en nuestro interfaz gráfico
  • Todos estos controles normalmente derivan de la clase android.view.View
  • Algunas clases de este paquete que deberíamos conocer

Button, CheckBox,RadioButton. Spinner, ImageButton, TextView, EditText, AnalogClock, DigitalClock, CalendarView, DatePiker, Filter, Gallery,VideoView AbsoluteLayout, FrameLayout, GridLayout, TableLayout, RelativeLayout ProgressBar, TabHost, Toast

acceder a un componente en código

  1. identificaarlo en el diseño android:id
  2. podremos acceder a él por el método findViewById()
  • Ejemplo quiere acceder a un texto
  1. En el fichero xml
<TextView
 android:id="tNombre">
</TextView>
  1. En el código
TextView nombre = (TextView)findViewById(R.id.tNombre);

TextView

  • Referenica
http://developer.android.com/reference/android/widget/TextView.html 
  • Representa un texto escrito en pantalla; sería un típico label o etiqueta
  • Deriva de la clase View
  • Definido en el paquete android.widget

Atributos especiales de TextView

typeFace
Es el tipo de letra y tiene definidos los siguientes valores
android:typeface={normal|sans|serif|monospace}
textStyle
Es el tipo de letra y los valores definidos son los siguientes
android:textStyle={normal|bold|italic}
  • Siempre que especificamos una lista de valores representan enumeraciones por lo que el primer elemento corresponde al valor cero.
  • es decir las siguientes definiciones serías homólogas
android:textStyle ="normal"
android:textStyle ="0"
android:typeFace="monospace"
android:typeFace="3"
ems, maxEms, minEms lines, maxLines, minLines, ellipsize
  • Son atributos para especificar la anchura y número de líneas que puede ocupar el texto
  • Si no se especifica nada el texto se alargará en una línea al máximo del dispositivo para visualizarse

los atributos ems son una buena forma de especificar el ancho de un texto independientemenete del tamaño del tipo de letra. la propiedad android:layout_width="wrap_content", en otro caso no tiene efecto.

  • ems especifica el ancho de la letra M
  • Si el texto no cabe en el ancho especificado se corta, para que el usuario perciba que falta texto, debemos especificar la propiedad ellipsize para que sustituya los dos últimos caracteres por
AutoLink, linkClickable
  • autoLink permite especificar que el texto que tiene un significado especial (número de teléfono, dirección de correo, url, dirección según map), se visualice como texto sensible, es decir con otro color y con posibilidad de interactuar con él.
  • Los valores posibles son
android:autoLink={"none"|"web"|"email"|"phone"|"map"|"all"}
  • Con la propiedad linkClickable se permite o no que el usuario no puede interactuar con el texto aunque aparezca sensibilizado.
  • Con esta propiedad a true (valor por defecto) el usuario puede interactuar con el texto, lo que provocará que se ejecute la aplicación correspondiente (Dial del teléfono, navegador web para url, cliente de correo para email y map para la dirección de una ubiación)

Unidades de medida de los atributos

  • Son muchas las unidades de medida para especificar tamaños, anchuras, etc.
  • Iremos analizando las diferentes unidades que podemos usar
  1. dp densidad de píxeles independientes, es una unidad abstracta (no corresponde a tamaño físico) y se basa en la densidad física de la pantalla. Es una medida proporcional y usarla proporciona compatibilidad con las diferentes pantallas sean de móvil o tablet. Es recomendado su uso.
  2. px Píxeles,son los píxeles reales de la pantalla. Su valor real variará según la resolución de la pantalla que tengamos.
  3. en centímetros o Cm es un tamaño físico de la pantalla.
  4. mm milímetros, igual que el caso de en son tamaños físico de la pantalla.
  5. pt puntos la medida es representada por 1/72 de una pulgada en función del tamaño físico de la pantalla.
  6. sp escala de píxeles independientes es como la unidad dp, pero también es escalado por la preferencia del usuario tamaño de la fuente. Se recomienda utilizar esta unidad al especificar tamaños de fuente, por lo que se ajusta tanto para la densidad de pantalla y preferencias del usuario.
  • Los

Son muchos los atributos y métodos que tiene asociada esta clase

Atributos de la clase TextView
Atributo Valores Objetivo
android:text cadena raw o referencia a un recurso cadena Texto que se muestra en la pantalla

android:autoLinck

  • Sirve para crear vínculos contextuales
  • hay ocasiones en que parte del texto puede tener un comportamiento especial, por ejemplo ser un teléfono, una dirección de correo o una referencia web
Valores de la propiedad android:autoLink
Valor Significado
none Desactiva los vínculos
web Activa los vínculos URL con páginas Web
email Direcciones de correo con el cliente de correo, con el destinatario indicado
phone activa el dial del dispositivo para llamar al número indicado
map activa las aplicaciones de mapas con los vínculos de la direcciones de las calles
all Activa todos los vínculos android:text cadena raw o referencia a un recurso cadena Texto que se muestra en la pantalla
linkClickable=(true|false)
Con esta propiedad conseguimos que el usuario vea el texto destacado, pero que no pueda hacer click sobre el texto (valor false)

EditText

  • Deriva de la clase TextView

Spinner

Button

Checkbox

ToggleButton

Switch

RadioButton

Fechas y horas

ProgressBar

SeekBar

RatingBar

Chronometer