Usuario:ManuelRomero/Android/Interfaz/elementos
De WikiEducator
< Usuario:ManuelRomero | Android | Interfaz
Revisión a fecha de 11:31 12 dic 2012; ManuelRomero (Discusión | contribuciones)
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
- identificaarlo en el diseño android:id
- podremos acceder a él por el método findViewById()
- Ejemplo quiere acceder a un texto
- En el fichero xml
<TextView android:id="tNombre"> </TextView>
- 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
- 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.
- 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.
- en centímetros o Cm es un tamaño físico de la pantalla.
- mm milímetros, igual que el caso de en son tamaños físico de la pantalla.
- pt puntos la medida es representada por 1/72 de una pulgada en función del tamaño físico de la pantalla.
- 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
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
Valor | Significado | |||
---|---|---|---|---|
none | Desactiva los vínculos | |||
web | Activa los vínculos URL con páginas Web | |||
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