Подтвердить что ты не робот

Массивы ресурсов

Есть ли способ определить массив в 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>
4b9b3361

Ответ 1

Если я правильно понял ваш вопрос, я думаю, что я знаю обходное решение (так как доступ к ним через 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]));