如何在XML中将“字符串数组”从XML转换为字符串数组?

时间:2016-02-19 19:11:05

标签: java android arrays

我正在尝试创建一个ListView,它从用默认“字符串”XML编写的数组中读取。我的想法是,当我在Java类中创建一个数组适配器时,我不能直接将适配器引用到XML值。适配器请求Java值,这引出了我的问题中最重要的部分:如何将XML字符串数组转换为Java字符串数组?

到目前为止,这是我的(相关)代码:

XML:

<string-array name="courseNames">
    <item>Lesson 1</item>
    <item>Lesson 2</item>
    <item>Lesson 3</item>
    <item>Lesson 4</item>
    <item>Lesson 5</item>
    <item>Lesson 6</item>
</string-array>

爪哇:

ListView lv1 = (ListView) findViewById(R.id.listViewID);

lv1.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, R.array.courseNames));

但我不能将courseNames作为参数,因为它需要一个Java数组。

1 个答案:

答案 0 :(得分:1)

<string-array name="courseNames">
    <item>Lesson 1</item>
    <item>Lesson 2</item>
    <item>Lesson 3</item>
    <item>Lesson 4</item>
    <item>Lesson 5</item>
    <item>Lesson 6</item>
</string-array>

在这种情况下,您可以使用:

List<String> Lines = Arrays.asList(getResources().getStringArray(R.array.courseNames));