2010-11-23 3 views

Répondre

26

Oui, il y a une méthode recommandée pour gérer plusieurs langues

est facile Support multilangue fait pour android. Créez un nouveau répertoire de valeurs pour la langue avec le suffixe du code de langue. Pour l'allemand: values-de ou french: values-fr copiez votre string.xml dans celui-ci et traduisez chaque entrée. C'est tout ce dont vous avez besoin.

Do android support multiple languages?

Fournir vous suivez les recommandations, détection quelle langue l'utilisateur préfère est automatique.

avoir une lecture de ceci:

http://developer.android.com/guide/topics/resources/localization.html

+0

merci! Savez-vous s'il est possible de lier à ces chaînes à partir d'un fichier XML personnalisé? – clamp

+0

Je ne suis pas sûr, désolé. Si vous posez cette question comme nouvelle question, quelqu'un d'autre pourrait connaître la réponse. –

+0

Je m'attendais à une solution compliquée. Mais j'ai quelque chose de jamais plus simple. Merci beaucoup, Colin et Clamp. :-) –

1

Dans le fichier d'activité

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()); 


} 

Dans 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> 

ET Créer un dossier et fichier

res \ valeurs \ string.xml (anglais)

res \ valeurs salut \ string.xml (Hindi)

res \ valeurs kan \ string.xml (Kannada)

res \ valeurs -te \ string.xml (Telugu)

res \ valeurs-ta \ string.xml (Tamil)

res \ valeurs ml \ string.xml (malayalam)

res \ valeurs-mr \ string.xml (Marathi)

En string.xml (Hindi)

<resources> 
<string name="email">ईमेल</string> 
<string name="password">पासवर्ड </string> 
</resources> 
Questions connexes