[英]Integer array of resource ids returns 0
我有一組存儲在數組中的資源ID。 這可以在回收器視圖中訪問以填充圖像視圖。 問題是當我訪問數組時,返回的所有值都是0。
// arrays.xml
<array name="array_category_icons">
<item>@drawable/autumn</item>
<item>@drawable/backpack</item>
</array>
// inside recycler view adapter
int[] myIcons = getActivity().getResources().getIntArray(R.array.array_category_icons);
myIcons[i] always returns 0.
drawable只在hdpi文件夾中。
做這個:
TypedArray ta = getResources().obtainTypedArray(R.array.array_category_icons);
Drawable[] icons = new Drawable[ta.length()];
for (int i = 0; i < ta.length(); i++) {
int id = ta.getResourceId(i, 0);
if (id != 0) {
icons[i] = ContextCompat.getDrawable(this, id);
}
}
ta.recycle();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.