webentwicklung-frage-antwort-db.com.de

Greifen Sie über den Java-Android-Code auf die string.xml-Ressourcendatei zu

Wie können Sie über Android res/values/string.xml auf die Werte in der Activity class-Ressourcendatei zugreifen?

91
Ravikiran

Diesen Code in res/values/string.xml eingeben

<string-array name="planet"> 
    <item>Mercury</item>
    <item>Venus</item>
    <item>Earth</item>
    <item>Mars</item>
</string-array>

Dieser Code wird in res/layout/main.xml eingefügt und entfernt Standard-Widgets, die in main.xml vorhanden sind.

<ListView Android:id="@+id/planet"
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent"
    Android:entries="@array/planet"/>
</LinearLayout>
15
Ravikiran

Nun, Sie können String mit verwenden,

getString(R.string.app_name);

Und Sie können String-Array verwenden 

String arr[] = getResources().getStringArray(R.array.planet);
for (int i = 0; i < arr.length; i++) {
        Toast.makeText(getBaseContext(),arr[i], Toast.LENGTH_LONG).show();  
}
132
Lalit Poptani

strings.xml:

<string name="some_text">Some Text</string>

Aktivität:

getString(R.string.some_text);
41
Ollie C

Wenn getString (R.string.app_name); funktioniert nicht für Sie, Sie können den Kontext wie folgt übergeben:

context.getString(R.string.app_name);
14
Pritesh Desai

Wenn Sie den Kontext von Activity haben, gehen Sie mit:

getString(R.string.app_name);

Wenn Sie nicht über den Kontext verfügen, versuchen Sie es unten. Sie können den Kontext mithilfe von Constructor aus der Aktivität abrufen.

mContext.getString(R.string.app_name);
0
gauravsngarg