如何从 Android Activity class访问 res/values/string.xml资源文件中的值?
Activity class
res/values/string.xml
strings.xml:
<string name="some_text">Some Text</string>
Activity:
getString(R.string.some_text);
Well you can get String using,
getString(R.string.app_name);
And, you can get string-array using
String arr[] = getResources().getStringArray(R.array.planet); for (int i = 0; i < arr.length; i++) { Toast.makeText(getBaseContext(),arr[i], Toast.LENGTH_LONG).show(); }
Put this code in res/values/string.xml
<string-array name="planet"> <item>Mercury</item> <item>Venus</item> <item>Earth</item> <item>Mars</item> </string-array>
This code to be placed in res/layout/main.xml and remove default widgets present in main.xml.
res/layout/main.xml
main.xml
<ListView android:id="@+id/planet" android:layout_width="fill_parent" android:layout_height="fill_parent" android:entries="@array/planet"/> </LinearLayout>
If getString(R.string.app_name); isn't working for you, you can pass context like this:
context.getString(R.string.app_name);
If you have the context of Activity, go with:
If you don't have the context, try below, you can get the context from activity using Constructor.
Constructor
mContext.getString(R.string.app_name);