web-dev-qa-db-ja.com

リソース配列

要素がリソース参照であるXMLの配列を定義する方法はありますか?たとえば、(それは動作しませんが、それは私が欲しいものを説明します):

<integer-array name="actions_images">
    <item>@drawable/pencil</item>
    <item>@drawable/pencil</item>
    <item>@drawable/pencil</item>
    <item>@drawable/pencil</item>
    <item>@drawable/pencil</item>
    <item>@drawable/pencil</item>
</integer-array>
24
user940016

私があなたの質問を正しく理解していれば、回避策を知っていると思います(getResources()。getIntArray()を介してそれらにアクセスすることは機能しないため)。 (あなたはもっと読むことができます ここ 、それは私が回避策を取ったソースです)

TypedArray ar = context.getResources().obtainTypedArray(R.array.my_array);
int len = ar.length();     
int[] resIds = new int[len];     
for (int i = 0; i < len; i++)     
    resIds[i] = ar.getResourceId(i, 0);

ar.recycle();                       
// Do stuff with resolved reference array, resIds[]...     
for (int i = 0; i < len; i++)     
    Log.v (TAG, "Res Id " + i + " is " + Integer.toHexString(resIds[i]));
6
Thomas Calc