获取Drawable文件下面所有的图片信息、代码如下:
其中:Field 包为:import java.lang.reflect.Field;
简单说下流程:
1.获取本地文件 图片格式
2.把对应的R.id.* 放入list中
3.最后转换成android 图片Bitmap格式
List<Bitmap> getImage() {
List<Integer> list = new ArrayList<Integer>();
List<Bitmap> bitmaps = new ArrayList<Bitmap>();
// 用反射机制来获取资源中的图片ID和尺寸
Field[] fields = R.drawable.class.getDeclaredFields();
for (Field field : fields) {
if (!"icon".equals(field.getName()))// 除了icon之外的图片
{
int index = 0;
try {
index = field.getInt(R.drawable.class);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
// 保存图片ID
list.add(index);
}
}
for (int i = 0; i < list.size(); i++) {
// 取得图像大小
Bitmap bmImg = BitmapFactory.decodeResource(context.getResources(),
list.get(i));
bitmaps.add(bmImg);
}
return bitmaps;
}