viernes, 8 de marzo de 2013

Android - Manejando Resources

Cuando programamos para android, debemos tener en cuenta de que hay que separar la parte gŕafica (UI), del código de nuestra futura app.
La parte visual se escribe en XML y el código es Java. La misma distinción que se hace entre CSS y HTML.

Tras crear el proyecto, si nos fijamos en eclipse, vemos que se nos han generado una serie de carpetas. (assets, bin, libs, res, etc)

Aquí nos vamos a centrar en la carpeta res que es donde se almacenan las resources, los elementos que tienen que ver con la parte visual de la app.
Entre estos elementos tenemos las cadenas de texto, los menús, los colores, la disposición de los elementos en la pantalla (layout), etc.

Si consultamos las guías de Android para desarrolladores, los elementos que podemos tener en esta carpeta son:
Animation Resources
Animaciones
Se guardan en res/anim/ y accedemos a ellos desde nuestro código a través de la clase R.anim.
Color State List Resource
Colores
 Se guardan en res/color/ con un valor hexadecimal y accedemos a ellos desde nuestro código a través de la clase R.color.
Drawable Resources
Elementos gráficos.
Se guardan en  res/drawable/ y accedemos a ellos desde nuestro código a través de la clase R.drawable.
Layout Resource
Define la disposición que tendrán los elementos en la pantalla.
Se guardan en res/layout/ y accedemos a ellos desde nuestro código a través de la clase R.layout.
Menu Resource
Menús de nuestra app.
Se guardan en res/menu/ y accedemos a ellos desde nuestro código a través de la clase R.menu.
String Resources
Cadenas de texto, desde las de título de nuestra app hasta el texto que ponemos en un botón, además almacena conjuntos de cadenas de texto y plurales, (Incluye estilos).
Se guardan en res/values/ y accedemos a ellas desde nuestro código a través de las clases R.string, R.array, y R.plurals.
Style Resource
Define el estilo y el formato de los elementos que aparecen en la interfaz.
Se guarda en res/values/ y accedemos a ellos desde nuestro código a través de la clase R.style.
More Resource Types
Define distintos tipos de valores como booleanos, enteros, dimensiones, colores, y arrays.
Se guarda en res/values/ pero se accede a cada uno desde su propia clase (Ej. R.bool, R.integer, R.dimen, etc.).

No hay comentarios:

Publicar un comentario