有什么方法可以迭代整个 R.raw,R.drawable 或者任何 R 类吗?我想通过 iterate 动态的来逐条获取这些文件夹的每一个id。
ArrayList resArray = new ArrayList();
foreach(int id : R.raw) {
resArray.add(id);
}
有什么方法可以实现?
有什么方法可以迭代整个 R.raw,R.drawable 或者任何 R 类吗?我想通过 iterate 动态的来逐条获取这些文件夹的每一个id。
ArrayList resArray = new ArrayList();
foreach(int id : R.raw) {
resArray.add(id);
}
有什么方法可以实现?
用反射
public void field(){
Field[] fields =R.drawable.class.getFields();
for(Field f : fields){
try {
Log.d("reflect", "字段名: "+f.getName()+" 值: "+f.getInt(f));
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
03-12 17:41:53.444: D/reflect(15356): 字段名: answer_box 值: 2130837504
03-12 17:41:53.452: D/reflect(15356): 字段名: answer_box_alt 值: 2130837505
03-12 17:41:53.452: D/reflect(15356): 字段名: app_ico_48 值: 2130837506
03-12 17:41:53.452: D/reflect(15356): 字段名: app_ico_72 值: 2130837507
03-12 17:41:53.452: D/reflect(15356): 字段名: background 值: 2130837508
03-12 17:41:53.452: D/reflect(15356): 字段名: button_normal 值: 2130837509
虽然可以做到 但还是奉劝:不要动他