2010-02-19 14 views
5

¿Es posible encontrar dinámicamente cuáles son los idiomas admitidos por la aplicación? Por ejemplo, tengo cadenas para los siguientes idiomas: inglés, francés, holandés y alemán. Se definen en sus respectivos directorios res: values, values-fr, values-nl y values-de. Quiero darle al usuario la posibilidad de elegir entre ellos y para esto quiero cargarlos. Pero no quiero codificar las opciones. Traté de usar:Obtener los idiomas disponibles de la aplicación de forma dinámica

getApplication().getResources().getAssets().getLocales() 

Pero este método devuelve todas las configuraciones regionales que admite el teléfono.

¿Tiene alguna otra idea?

+0

Podemos ver la etiqueta "Android" - no hay necesidad de ponerlo en el título :) –

+0

Yo diría que ya que está "hardcoding" los idiomas de todos modos, ¿por qué no tener un solo 'string-array' que los enumera? Además, no hay garantía (en el caso general) de que una carpeta 'values-XY' contenga cadenas para ese idioma. Esta es también una forma indirecta de decir que no estoy seguro de si hay un método para enumerar los directorios de recursos;) –

Respuesta

-1

Desde el punto de vista de una guía de usuario de Android, es extraño ofrecer al usuario una media distinta a la de la configuración del dispositivo para cambiar la configuración regional. Si su aplicación invoca una otra aplicación, ¿qué entorno local utilizará esta aplicación?

Además, no estoy seguro, hay una manera de explorar los recursos después del proceso de compilación, la forma en que se procesan, organizan y empaquetan los recursos es una caja negra, ninguna aplicación debe intentar confiar en una organización/formato dado porque esto podría cambiar en el futuro.

Cuestiones relacionadas