0

以下に詳述するように、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>

そして、値ではなく項目名の 1 つ (1、2、3、4) を取得する必要があります。これまでのところ、次のように getResourceEntryName を使用して配列の名前を取得できることがわかっています。

getResources().getResourceEntryName(R.array.spinerArray);

アイテム名を取得する方法はありますか?

ありがとう。

4

2 に答える 2

0

これは xml であるため、xml パーサーが必要になります。次に、を使用して name の値を取得できます

attributes.getValue("name");

または

name = ((Element) your_node).getAttribute("name"));
using DOM parser (org.w3c.dom)
于 2013-08-20T16:02:24.570 に答える
0

別の解決策:

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);
}
于 2015-02-23T21:31:38.543 に答える