Moderator, Bürokraten, Checkuser-Berechtigte, developer, emailconfirmed, Oberflächenadministratoren, Oversighter, Administratoren
11.008
Bearbeitungen
(Die Seite wurde neu angelegt: „== Locale-Verzeichnis und Zeichenketten-Dateien erstellen == Um mehr Sprachen zu unterstützen, musst du zusätzliche <code>values</code> Ordner unter <code>re…“) |
(Die Seite wurde neu angelegt: „Beispielsweise:“) |
||
(14 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 5: | Zeile 5: | ||
== Locale-Verzeichnis und Zeichenketten-Dateien erstellen == | == Locale-Verzeichnis und Zeichenketten-Dateien erstellen == | ||
Um mehr Sprachen zu unterstützen, musst du zusätzliche <code>values</code> Ordner unter <code>res/</code> erstellen, welche einen Bindestrich gefolgt vom ISO Sprach-Code am Ende des Ordner-Namens haben. Als Beispiel: <code>values-es/</code> ist der Ordner, welcher einfache Ressourcen für die Lokalisierung für den Sprachcode "es" beinhaltet. Android lädt die korrekten Ressourcen während der Laufzeit entsprechend der Sprach-Einstellungen des Gerätes. Für mehr Informationen, siehe [http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources Providing Alternative | Um mehr Sprachen zu unterstützen, musst du zusätzliche <code>values</code> Ordner unter <code>res/</code> erstellen, welche einen Bindestrich gefolgt vom ISO Sprach-Code am Ende des Ordner-Namens haben. Als Beispiel: <code>values-es/</code> ist der Ordner, welcher einfache Ressourcen für die Lokalisierung für den Sprachcode "es" beinhaltet. Android lädt die korrekten Ressourcen während der Laufzeit entsprechend der Sprach-Einstellungen des Gerätes. Für mehr Informationen, siehe [http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources Providing Alternative Resources]. | ||
Sobald du entschieden hast, welche Sprachen du unterstützen möchtest, kannst du die Ressourcen-Unterordner und die Zeichenketten-Ressourcen-Dateien erstellen. Als Beispiel: | |||
<syntaxhighlight lang="text"> | <syntaxhighlight lang="text"> | ||
MyProject/ | MyProject/ | ||
Zeile 19: | Zeile 19: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Füge die Zeichenketten-Werte für jede Sprach-Version in die entsprechende Datei ein. | |||
Während der Laufzeit nutzt Android die entsprechenden Zeichenketten-Ressourcen, basierend auf der Spracheinstellung des vom Nutzer verwendeten Gerätes. | |||
Folgend sind beispielsweise verschiedene Zeichenketten-Ressourcen-Dateien für verschiedene Sprachen. | |||
Englisch (Standard-Sprache), <code>/values/strings.xml</code>:<syntaxhighlight lang="xml"> | |||
<?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||
<resources> | <resources> | ||
Zeile 33: | Zeile 33: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Spanisch, <code>/values-es/strings.xml</code>:<syntaxhighlight lang="xml"> | |||
<?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||
<resources> | <resources> | ||
Zeile 41: | Zeile 41: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Französisch, <code>/values-fr/strings.xml</code>:<syntaxhighlight lang="xml"> | |||
<?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||
<resources> | <resources> | ||
Zeile 49: | Zeile 49: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
'''Note:''' | '''Note:''' Du kannst den Sprach-Qualifier (oder jeden anderen Konfigurations-Qualifier) für jeden Ressourcen-Typ verwenden, so als wenn du verschiedene, lokalisierte Versionen eines Bitmap-Drawable bereitstellen möchtest. Für mehr Informationen, siehe [http://developer.android.com/guide/topics/resources/localization.html Lokalisierung]. | ||
== | == Zeichenketten-Ressourcen verwenden == | ||
Du kannst Zeichenketten-Ressourcen in deinem Code oder anderen XML-Dateien anhand des Ressourcen-Namens, definiert mit dem <code>name</code> Attribut im <code><string></code> Element, referenzieren. | |||
In | In deinem Quellcode kannst du eine Zeichenketten-Ressource mit der Syntax <code>R.string.<string_name></code> referenzieren. Es gibt eine Vielzahl an Methoden, die eine Zeichenketten-Ressource auf diesen Weg akzeptieren. | ||
Beispielsweise: | |||
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
// Get a string resource from your app's Resources | // Get a string resource from your app's Resources | ||
Zeile 66: | Zeile 66: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
In | In anderen XML-Dateien kannst du eine Zeichenketten-Ressource immer dann mit dieser Syntax <code>@string/<string_name></code> referenzieren, wenn das XML-Attribut eine Zeichenkette akzeptiert. | ||
Beispielsweise: | |||
<syntaxhighlight lang="xml"> | <syntaxhighlight lang="xml"> | ||
<TextView | <TextView |
Bearbeitungen