2010-11-23 4 views

Antwort

26

Ja, ist es eine empfohlene Möglichkeit, mehrere Sprachen

Unterstützung mehrerer Sprachen für Android ist leicht getan zu verwalten. Erstellen Sie ein neues Werteverzeichnis für die Sprache mit dem Suffix des Sprachcodes. Für Deutsch: values-de oder french: values-fr kopiere deine string.xml in diese und übersetze jeden Eintrag. Das ist alles was du brauchst.

Do android support multiple languages?

Sofern Sie den Empfehlungen folgen, Erfassen der Benutzer die Sprache bevorzugt automatisch.

Haben Sie einen Lese dafür:

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

+0

Dank! Weißt du, ob es möglich ist, diese Zeichenfolge aus einer benutzerdefinierten XML-Datei zu verknüpfen? – clamp

+0

Ich bin mir nicht sicher, sorry. Wenn Sie das als neue Frage stellen, könnte jemand anders die Antwort wissen. –

+0

Ich habe eine komplizierte Lösung erwartet. Aber ich habe etwas nie einfacher. Vielen Dank, Colin und Clamp. :-) –

1

In Aktivität

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


} 

In res \ Menü \ 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> 

und Ordner-Datei erstellen und

Datei

res \ Werte \ string.xml (English)

res \ Werte-Hallo \ string.xml (Hindi)

res \ Werte-kan \ string.xml (Kannada)

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

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

res \ Werte-ml \ string.xml (Malayalam)

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

In string.xml (Hindi)

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