web-dev-qa-db-fra.com

Accéder au fichier de ressources string.xml à partir de Java Android Code

Comment accéder aux valeurs du fichier de ressources res/values/string.xml à partir de Android Activity class?

91
Ravikiran

Mettez ce code dans res/values/string.xml

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

Ce code doit être placé dans res/layout/main.xml et supprimer les widgets par défaut présents dans main.xml.

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

Eh bien, vous pouvez obtenir String en utilisant,

getString(R.string.app_name);

Et vous pouvez obtenir un tableau de chaînes en utilisant 

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>

Activité:

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

Si getString (R.string.app_name); ne fonctionne pas pour vous, vous pouvez passer le contexte comme ceci:

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

Si vous avez le contexte d'activité, allez avec:

getString(R.string.app_name);

Si vous n'avez pas le contexte, essayez ci-dessous, vous pouvez obtenir le contexte d'activité en utilisant Constructor.

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