<?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="home_grid_texts"> <item>转账</item> <item>余额宝</item> <item>手机充值</item> <item>信用卡还款</item> </string-array> <array name="icons"> <item>@drawable/home</item> <item>@drawable/settings</item> <item>@drawable/logout</item> </array> <array name="colors"> <item>#FFFF0000</item> <item>#FF00FF00</item> <item>#FF0000FF</item> </array> </resources>
常用方法:
img_text=mContext.getResources().getStringArray(R.array.home_grid_texts);
//此方案不行
//imgs=mContext.getResources().getIntArray(R.array.home_grid_imgs);
TypedArray ar = mContext.getResources().obtainTypedArray(R.array.home_grid_imgs);
int len = ar.length();
//int[] resIds = new int[len];
imgs=new int[len];
for (int i = 0; i < len; i++){
//resIds[i] = ar.getResourceId(i, 0);
imgs[i]=ar.getResourceId(i, 0);
}
ar.recycle();
Resources res = getResources();
TypedArray icons = res.obtainTypedArray(R.array.icons);
Drawable drawable = icons.getDrawable(0);
TypedArray colors = res.obtainTypedArray(R.array.colors);
int color = colors.getColor(0,0);
参考:http://stackoverflow.com/questions/6945678/android-storing-r-drawable-ids-in-xml-array