Pareciera muy complejo pero es realmente simple hacer una aplicacion Flex multiidioma. En mi ejemplo uso una clase que tiene un diccionario para almacenar las cadenas soportadas y las traducciones de estas. La "magia" esta en la funcion "g" (corta para facilitar su uso despues) la cual al pasarle la cadena original buscara la traduccion, en caso de encotrarla la regresa y en caso de no encotrarla regresa la cadena original. Dicha clase en el ejemplo se llama I18N.as (i18n = internacionalization).
Cabe mencionar que el ejemplo usa Swiz como framework MVC y JSON como formato de los datos cargados por lo que sera necesario tener conocimiento basico de estos para saber como funciona el ejemplo completo.
Cualquier duda (sobre el ejemplo por favor, no sobre swiz ni json), en los comentarios ;)
Codigo: http://dl.dropbox.com/u/4438871/MultiIdioma.zip
Actualizacion: Por recomendacion de Hector agregue a la clase principal de este proyecto su licencia :) pero no hay de que preocuparse, es una licencia BSD por lo que se puede seguir usando y/o modificando ;)
viernes 5 de febrero de 2010
Suscribirse a:
Enviar comentarios (Atom)



2 comentarios:
Está chido el ejemplo.. lo que siento que le falta es que el lenguaje original también debería estar en la BD (o JSON en este caso).. así cualquier cambio de texto o corrección podrá hacerse sin tener que recompilar la app.. ejemplo.. "Hello World".. si la quiero cambiar a "What's Up World" tengo que cambiar la frase y recompilar.. y para Español (en el mismo ejemplo) cambiar de "Hola Mundo" a "Qué tal Mundo" no necesita recompilar la app.. =)
fuera de eso está chido el ejemplo.. saludos
De hecho no es necesario recompilarlo, si observas el JSON con cuidado, el idioma "original" esta declarado pero no tiene entradas, por lo que si quisieras modificar alguna (o todas) las frases basta con agregarlas.
Publicar un comentario en la entrada