Android 资源名称(name)和id互相转换,动态获取
通过资源名称(例如ic_launcher)获取对应的id
public int getId(String name){
Resources res=getResources();
//return res.getIdentifier(name,null,null);//带上地址 例如 包:type/name (org.anjoy.act:drawable/ic)
return res.getIdentifier(name,"drawable",getPackageName());//名称例如 ic
}
//其中三个参数分别为资源的名称,资源的类型(类)(在R.java 类中的几个固定的类:drawable、id、string、layout、anim等),最后是资源的包名。当然,如果第一个参数是 包名:类型/名称,也可以,按照上面注释掉的方法
通过对应id获取相应的资源名称
public String getName(int id){
Resources res=getResources();
return res.getResourceEntryName(id);//得到的是 name
//return res.getResourceName(id);//得到的是 包/type/name
}