¿Cómo puedo crear una aplicación androide multilingüe?
Me gustaría crear una aplicación Android multilingüe.
¿Hay alguna forma de detectar qué idioma prefiere el usuario?
- Letras cirílicas que no se muestran en PDF generadas con iText en Android
- Android Text-to-Speech habla cantonés con "alfabeto" por programa
- Cómo manejas la internacionalización para "Tu entrada 'xyz' es excelente!"
- Soporte del idioma hindi para Android: el texto aparece como cajas
- ToUpperCase en Android es incorrecto para los argumentos de dos argumentos y el idioma griego y turco predeterminados
¿Hay una forma recomendada de administrar varios idiomas en Android o debo reinventar la rueda?
- Visualización de fechas en formato localizado en Android
- Google Maps Android API v2, título del marcador / muestra incorrecta del fragmento
- Mostrando japonés en lugar de chino en una vista de texto
- ¿Cómo averiguar la orientación del texto dependiente de la configuración regional en java?
- Android: cómo obtener el día actual de la semana (lunes, etc ...) en el idioma del usuario?
- ¿Cómo puedo tener res / values-pt_PT y res / values-pt_BR en Android?
- Dipaly farsi texto en la web de android (para los teléfonos que no apoyan farsi)
- Tengo la aplicación Android que se está ejecutando en la versión en Inglés Ahora los clientes quieren que se convierta en idioma árabe
Sí, hay una forma recomendada de administrar varios idiomas
El soporte multilingüe es fácil para Android. Cree un nuevo directorio de valores para el idioma con el sufijo del código de idioma. Para alemán: valores-de o francés: valores-fr que copiar su string.xml en eso y traducir cada entrada. Eso es todo lo que necesitas.
¿Soporta Android varios idiomas?
Siempre que siga las recomendaciones, detectar qué idioma prefiere el usuario es automático.
Tenga una lectura de esto:
http://developer.android.com/guide/topics/resources/localization.html
En el archivo de actividad
public boolean onOptionsItemSelected(MenuItem item) { String languageToLoad="en"; switch (item.getItemId()) { case R.id.eng: languageToLoad = "en"; break; case R.id.hn: languageToLoad = "hi"; break; case R.id.te: languageToLoad = "te"; break; case R.id.ta: languageToLoad = "ta"; break; case R.id.ka: languageToLoad = "kan"; break; case R.id.ml: languageToLoad = "ml"; break; case R.id.mr: languageToLoad = "mr"; break; default: break; } Locale locale = new Locale(languageToLoad); Locale.setDefault(locale); Configuration config = new Configuration(); config.locale = locale; getResources().updateConfiguration(config,getResources().getDisplayMetrics()); }
En res \ menu \ menus.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context="com.example.connect.OrderProcess"> <item android:title="Language" app:showAsAction="never"> <menu> <item android:id="@+id/eng" android:title="English"/> <item android:id="@+id/hn" android:title="Hindi"/> <item android:id="@+id/te" android:title="Telugu"/> <item android:id="@+id/ta" android:title="Tamil"/> <item android:id="@+id/ka" android:title="Kannada"/> <item android:id="@+id/ml" android:title="Malayalam"/> <item android:id="@+id/mr" android:title="Marathi"/> </menu> </item> </menu>
Y Crear carpeta y archivo
Res \ values \ string.xml (español)
Res \ values-hi \ string.xml (Hindi)
Res \ values-kan \ string.xml (Kannada)
Res \ values-te \ string.xml (Telugu)
Res \ values-ta \ string.xml (Tamil)
Res \ values-ml \ string.xml (Malayalam)
Res \ values-mr \ string.xml (Marathi)
En string.xml (Hindi)
<resources> <string name="email">ईमेल</string> <string name="password">पासवर्ड </string> </resources>