Android 数组项的getResourceEntryName

Android 数组项的getResourceEntryName,android,arrays,getresource,Android,Arrays,Getresource,我在strings.xml中有一个字符串数组,详情如下: <string-array name="spinerArray"> <item name="one">First</item> <item name="two">Second</item> <item name="three">Third</item> <item name="four">Fourth</i

我在strings.xml中有一个字符串数组,详情如下:

<string-array name="spinerArray">
    <item name="one">First</item>
    <item name="two">Second</item>
    <item name="three">Third</item>
    <item name="four">Fourth</item>
</string-array>
有没有办法获取项目名称


谢谢。

由于这是一个xml,您需要一个xml解析器。然后可以使用

attributes.getValue("name");

另一个解决方案:

Resources res = getResources();
TypedArray entriesTypedArray = res.obtainTypedArray(R.array.spinerArray);
ArrayList entriesName = new ArrayList();
TypedValue v1 = new TypedValue();
for (int i1=0; i1<entriesTypedArray.length(); i1++) {
    entriesTypedArray.getValue(i1, v1);
    String name1 = res.getResourceEntryName(v1.resourceId);
    entriesName.add(name1);
}
Resources res=getResources();
TypedArray entriestTypeDarray=res.obtainTypedArray(R.array.spinerArray);
ArrayList entriesName=新的ArrayList();
TypedValue v1=新的TypedValue();

对于(int i1=0;i1A)类似的问题已经得到了回答。是一个可能有用的链接。
name = ((Element) your_node).getAttribute("name"));
using DOM parser (org.w3c.dom)
Resources res = getResources();
TypedArray entriesTypedArray = res.obtainTypedArray(R.array.spinerArray);
ArrayList entriesName = new ArrayList();
TypedValue v1 = new TypedValue();
for (int i1=0; i1<entriesTypedArray.length(); i1++) {
    entriesTypedArray.getValue(i1, v1);
    String name1 = res.getResourceEntryName(v1.resourceId);
    entriesName.add(name1);
}