Mehrsprachige Applikationen (Internationalisierung)

Alle Ressourcen welche von einer App verwendet werden können sich bekanntlich im Ordner res gespeichert. Für die Texte ist der Ordner res/values vorgesehen, in welchem sich das File strings.xml befindet.

Folgender Node erstellt beispielsweise einen String mit der ID app_name:

<string name="app_name">My application</string>

Auf diesen String kann man num wie folgt zugreifen:

android:text="@string/app_name"

Nun ist es egal, welche Sprache das Device eingestellt hat, es wird immer dieser String angezeigt. Um diesen Text sprachabhängig zu erstellen braucht man nun mehrere Ordner, z.B. wie folgt:

  • values
  • values-en
  • values-de

Der Ordner values ist dieser welcher bereits vorhanden ist und dient als Fallback. Im Ordner values-de hat es nun wieder ein strings.xml mit den genaugleichen Nodes wie das herkömmliche strings.xml. Ist nun das Device auf eine deutsche Sprache eingestellt, so nimmt die Virtual Maschine automatisch das File aus dem Ordner values-de.

Das Ganze kann man noch weiterziehen, und z.B. die Endungen en-GB oder en-US unterscheiden. Zudem ist es auch möglich, z.B. nach der Grösse des Displays zu unterschieden. Wer mehr darüber wissen möchte kann dies hier nachlesen: Resources and Internationalization

Dies kann man übrigens auch auf alle anderen Ressourcen wie z.B. die Bilder anwenden.

android/mehrsprachige_applikationen_internationalisierung.txt · Zuletzt geändert: 27.12.2013 19:46 (Externe Bearbeitung)
Nach oben
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0