Android读XML的数组读不出来


<array name="xml_data">
    <item>@xml/data1</item>
    <item>@xml/data2</item>
    <item>@xml/data3</item>
    <item>@xml/data4</item>
</array>
final Resources res = getResources();
int[] xmlList = res.getIntArray(R.array.xml_data);
Log.i(TAG, "Length: "+ xmlList.length);
for (int i = 0; i < xmlList.length; i++) {
    Log.i(TAG, xmlList[i].);
}

结果得到的输出:

Length: 4
0
0
0
0

无奈了。。。是我的xml有问题还是代码的问题?

xml Android

普通的魔法师 11 years, 3 months ago
<array name="xml_data">
    <item>@xml/data1</item>
    <item>@xml/data2</item>
    <item>@xml/data3</item>
    <item>@xml/data4</item>
</array>

没看懂,@xml引用的是什么数据? <array></array>标签我也没用过,我估计{Resource#getStringArray}可以调用

<integer-array name="data">
    <item>0</item>
    <item>1</item>
    <item>2</item>
</integer-array>

才可以调res.getIntArray(R.array.data);

<string-array name="date">
    <item>string1</item>
    <item>string2</item>
    <item>string3</item>
</string-array>

调用res.getStringArray(R.array.data);

目标魔法师 answered 11 years, 3 months ago

Your Answer