416 Stimmen

Wie liest man den Wert aus string.xml in Android?

Ich habe die Zeile geschrieben:

String Mess = R.string.mess_1 ;

um einen String-Wert zu erhalten, aber anstatt einen String zurückzugeben, gibt es mir eine ID vom Typ Integer. Wie kann ich den String-Wert abrufen? Ich habe den String-Wert in der string.xml Datei.

885voto

ccheneson Punkte 48032

Versuchen Sie dies

String mess = getResources().getString(R.string.mess_1);

UPDATE

String string = getString(R.string.hello);

Sie können entweder getString(int) o getText(int) um eine Zeichenkette abzurufen. getText(int) behält jede auf die Zeichenfolge angewendete Rich-Text-Formatierung bei.

Referenz: https://developer.Android.com/guide/topics/resources/string-resource.html

67voto

Hakan Cakirkan Punkte 1020

In Aktivität:

this.getString(R.string.resource_name)

Wenn Sie nicht aktiv sind, aber Zugang zum Kontext haben:

context.getString(R.string.resource_name)
application.getString(R.string.resource_name)

46voto

Robertas Uldukis Punkte 791

Ich benutze das hier:

String URL = Resources.getSystem().getString(R.string.mess_1);

26voto

oabarca Punkte 10118

Übrigens ist es auch möglich, String-Arrays in der strings.xml wie folgt zu erstellen:

<string-array name="tabs_names"> 
    <item>My Tab 1</item> 
    <item>My Tab 2</item>
</string-array>

Von Ihrer Aktivität aus können Sie dann die Referenz wie folgt abrufen:

String[] tab_names = getResources().getStringArray(R.array.tab_names);
String tabname1=tab_names[0];//"My Tab 1"

11voto

Alvaro Punkte 465

Nur für zukünftige Referenzen.

En el Dokumentation der String-Ressourcen heißt es:

Sie können entweder getString(int) oder getText(int) verwenden, um eine Zeichenkette abzurufen. getText(int) behält alle auf die Zeichenkette angewendeten Rich-Text-Stylings bei.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X