2011-04-18 16 views
5

Sé que ya existe una función Locale.getAvailableLocales() y algunas otras similares que devuelven todos los idiomas disponibles (independientemente de si están disponibles en su teléfono móvil o no)Cómo obtener los idiomas disponibles (No todos, solo los idiomas disponibles en mi aplicación)

Estoy buscando un método para devolver solo los idiomas que hice la traducción (es decir, si tengo las 3 carpetas values-en, values-es, values-pt; Espero obtener la respuesta: [en, es, pt], o [inglés, español, portugués]

+0

Hola, estoy buscando este tipo de implementación. ¿Hay alguna forma de obtener la respuesta como [en, es, pt].? – Karthick

Respuesta

0

Locale.getAvailableLocales() le dará una lista de configuraciones regionales disponibles en todo el sistema. Estas se usan para formatear fechas, horas, números y similar. No tiene nada que ver con tu aplicación archivos de localización de localización.

Supongo que quiere cambiar los idiomas en el tiempo de ejecución y es por eso que desea enumerar la lista de idiomas. Bueno, probablemente necesite crear un archivo de configuración específico con esa lista y leer eso en tiempo de ejecución. Agregar archivos L10n requeriría otro paso: registrarlo en su archivo de configuración.
Como alternativa, es posible que desee enumerar los directorios de recursos (valores <, ID de configuración regional >) y captar las configuraciones regionales admitidas a partir de sus nombres, pero no creo que sea la solución más elegante. Sin embargo, funciona sin ningún registro ...

Cuestiones relacionadas