在获取图片资源数组时遇到以下问题:
在res/value中定义资源文件fileName.xml
,
定义图片资源数组
<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer-array name="store_other_image_array">
<item>@mipmap/aa</item>
<item>@mipmap/bb</item>
<item>@mipmap/cc</item>
<item>@mipmap/dd</item>
</integer-array>
</resources>
错误获取方式:
int[] imgs = getResources().getIntArray;
获取到的资源id都是0,错误
正确获取方式:
private int[] getImageList(int arrayId) {
TypedArray typedArray = getActivity().getResources().obtainTypedArray(arrayId);
final int len = typedArray.length();
int imageList[] = new int[len];
for (int i = 0; i < len; i++) {
imageList[i] = typedArray.getResourceId(i, 0);
}
typedArray.recycle();
return imageList;
}
获取到正确的资源id