您想从resources.xml获取arraylist是否有任何代码。请给我一些建议。谢谢提前
答案 0 :(得分:77)
String[] myResArray = getResources().getStringArray(R.array.my_array);
List<String> myResArrayList = Arrays.asList(myResArray);
此列表将是不可变的,因此如果您想要一个可变列表,只需执行:
List<String> myResMutableList = new ArrayList<String>(myResArrayList);
答案 1 :(得分:30)
我这样做了:
<强> string.xml:强>
定义字符串数组:
<string-array name="my_string_array">
<item>Test 1</item>
<item>Test 2</item>
<item>Test 3</item>
<item>Test 4</item>
<item>Test 5</item>
<item>Test 6</item>
</string-array>
在 Activity.class / Fragment.class :
List<String> myArrayList = Arrays.asList(getResources().getStringArray(R.array.my_string_array));
完成强>
答案 2 :(得分:8)
修改克劳斯的回答,获得ArrayList<String>
:
ArrayList<String> myResArrayList = new ArrayList<String>();
Resources res = getResources();
Collections.addAll(myResArrayList, res.getStringArray(R.array.myResArray));
答案 3 :(得分:7)
不完全确定你想要什么,但这可能值得一读:http://developer.android.com/guide/topics/resources/string-resource.html
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="planets_array">
<item>Mercury</item>
<item>Venus</item>
<item>Earth</item>
<item>Mars</item>
</string-array>
</resources>
如何使用代码检索应用程序中的数组:
Resources res = getResources();
String[] planets = res.getStringArray(R.array.planets_array);
答案 4 :(得分:3)
Price_array in strings.xml is assigned to Arraylist
private ArrayList<String> price_unit;
price_unit= new ArrayList<String>(Arrays.asList(getResources().getStringArray(R.array.Price_array)));