miércoles, 2 de junio de 2010

TUTORIAL: Desarrollo de aplicaciones para Android (XI)


Android se ejecuta en muchos dispositivos de muchos países. Para que nuestra aplicación llegue al máximo número de usuarios, debe cargar el texto, el sonido, los números, los sistemas monetarios y los gráficos más apropiados para cada región. A esto se le llama localización.

Entre esta parte del tutorial y el siguiente vamos a crear una aplicación que llamaremos "Hello, L10N" que utilizará la localización, es decir, que cargará diferentes recursos según la región en la que vivamos, utilizando el framework de Android. Para ello seguiremos el tutorial de esta página.

En esta primera parte crearemos una primer Hello, L10N que usará sólo los directorios de recursos por defecto (res/drawable, res/layout i res/values). Estos recursos no están localizados. Cuando un usuario ejecuta la aplicación con el locale por defecto, o con un locale que la aplicación no soporta, al aplicación carga los recursos de estos directorios por defecto.

La aplicación consiste en una interfaz de usuario simple que muestra dos objetos TextView y un botón con una imagen de una bandera nacional, que cuando hacemos clic en él muestra un AlertDialog que a su vez muestra información adicional.


A. Crear el proyecto y el layout

Para esta aplicación el lenguaje por defecto será el español (es-ES) y la localización por defecto España.

1. Creamos un nuevo proyecto y actividad llamados "HelloL10N".
2. Abrimos el fichero res/layout/main.xml y reemplazamos su contenido por el código del punto 2 del apartado "Create the Project and Layout" de esta página.

Como podemos ver, el LinearLayout tiene dos TextView que mostrarán el texto localizado y un botón que mostrará una bandera.


B. Crear recursos por defecto

1. Primero vamos a crear las cadenas de texto por defecto. Para hacer esto, abrimos el fichero res/values/strings.xml y reemplazamos su contenido por el código siguiente (clicad en la imagen si no veis bien el texto):


Este código proporciona todas las cadenas de texto en español que utilizará la aplicación.

2. Añadimos una imagen de bandera por defecto en la carpeta res/drawable (si no existe la creamos) con nombre "flag.png". Cuando la aplicación no esté localizada, mostrará esta bandera por defecto.

3. Abrimos el fichero HelloL10N.java y añadimos dentro del método onCreate el código del punto 3 del apartado "Create Default Resources" de esta página.

4. Ejecutamos la aplicación. Deberíamos ver algo similar a esto:























En la siguiente parte localizaremos la aplicación para que nos muestre un idioma y banderas diferentes según dónde vivamos.

2 comentarios:

Osuna dijo...

Buenas estoy siguiendo su tutorial el cual es de lo mejor que he encontrado en castellano, muchas gracias por su ayuda.
Mi duda viene en como configurar el simulador para poder ver el otro idioma, por ejemplo a usted le sale la parte de español y a mi la parte de inglés. Saludos

Byron dijo...

¡Hola, gracias por seguir el tutorial!

Puede cambiar el locale del dispositivo Android en "Home -> Menu -> Settings -> Language & keyboard -> Select Locale".

Le recomiendo que eche un vistazo al siguiente post: http://viva-moore.blogspot.com/2010/06/tutorial-desarrollo-de-aplicaciones_07.html

Ánimo y un saludo.

Publicar un comentario