¿Qué es la carpeta Values en Android Studio? AndroidStudioFAQs te lo cuenta

1
704
queesandroid

Después de aprender a crear un nuevo proyecto en Android, hemos visto la estructura de directorios de un proyecto y su finalidad. Ahora profundizaremos aún más en uno de esos directorios, aprendiendo qué es y para que sirve la carpeta Values en Android Studio.

¿Qué es la carpeta Values en Android Studio?

El directorio Values contiene los valores de nuestro proyecto, definiendo los nombres de las variables que serán referenciadas más tarde en el código. Estas variables por ejemplo, pueden ser cadenas de texto e incluso valores constantes.

¿Qué archivos contiene el directorio Values?

values-global

  • arrays.xml : Archivo XML que define series de valores que serán usados de forma conjunta. Por ejemplo, una lista de archivos de iconos, o una lista de opciones par amostrarle al usuario.
  • colors.xml : Archivo XML que define los valores de los colores que son usados en la aplicación. Esto permite estandarizar la interfaz de usuario.
  • dimens.xml : Archivo XML que define las dimensiones, tanto alturas como tamaños de fuentes de la interfaz de usuario.
  • strings.xml : Archivo XML que define cadenas de texto usadas en la aplicación. Por ejemplo, para colocar los títulos de las ventanas o el nombre de la aplicación y referenciarlas cuando lo nececesites en el código.
  • styles.xml : Archivo XML que define los estilos usados en la aplicación. Estos estilos pueden ser aplicados a los elementos de la interfaz de usuario, de modo que separamos la plantilla de las funcionalidades. Lo cual hace nuestra aplicación más fácil de mantener.

 

¿Qué valores puedo almacenar y cómo puedo utilizarlos?

values-strings

Bool

En este XML podemos almacenar los valores booleanos que queramos utilizar en nuestro proyecto. Crearemos un ejemplo“res/values/valores_booleanos.xml” con el siguiente código XML:

Ahora veamos como útilizarlo en el código java:

Color

En este recurso XML almacenaremos todos los colores en su valor hexadecimal que usaremos en nuestra aplicación. Deben ser almacenados en el fichero “res/values/colors.xml”. Veamos un pequeño ejemplo:

Uso en el código java:

Uso en un layout:

Dimension

Este recurso XML almacena los valores de las dimensiones que queramos utilizar. Estos valores pueden ser: dp (Density-independent Pixels), sp (Scale-independent Pixels), pt (Points), px (Pixels), mm (Millimeters) e in (inches).

Crearemos un ejemplo llamado“res/values/lista_dimensiones.xml” como este:

Uso en el código java:

Uso en un layout:

ID

Este recurso XML nos ofrece la posibilidad de tener un identificador único para los recursos de la aplicación y sus componentes. Crearemos un fichero“res/values/lista_ids.xml” con este código:

Aquí un ejemplo con un botón:

Y aquí con un diálogo:

Integer

Con este recurso XML podemos almacenar números enteros y referenciarlos mediante su nombre de manera cómoda. Veremos un ejemplo sencillo de este recurso creando un archivo al que llamaremos “res/values/lista_integers.xml” con este código XML:

Un ejemplo de uso en código java:

Integer Array

Veamos también como combinar el apartado anterior con un array. Un array de números enteros. Para ello crearemos un fichero llamado “res/values/array_de_enteros.xml” con el siguiente código XML:

Y un ejemplo de uso en el código fuente:

Typed Array

Una variación del anterior es el siguiente array tipado. Es nos permite la creación de arrays de otros recursos, por ejemplo, de los drawables. Veamos un ejemplo al que daremos el nombre de “res/values/array_tipado.xml” con el siguiente código fuente XML:

Y un uso práctico en el código java:

Con esto terminamos la explicación de qué es y para qué sirve la carpeta Values en Android Studio. El uso de estos recursos optimiza el código, por lo que es de vital importancia exprimir estas posibilidades al máximo, ya que nos hará mucho más sencilla la tarea de programar.

¿Os ha gustado la explicación sobre qué es la carpeta Values en Android Studio? Esperamos vuestras preguntas o recomendaciones en los comentarios.

1 Comentario

Dejar respuesta

Adivina adivinanza *