Android 根据字符串动态获取资源ID

1.常用方法
public
int getResId(String name,Context context){ Resources r = context.getResources(); int id = r.getIdentifier(name,"drawable","com.demo"); return id; }

 

2.使用反射(推荐,性能高)
public
class ResourceMan { public static int getResId(String variableName, Class<?> c) { try { Field idField = c.getDeclaredField(variableName); return idField.getInt(idField); } catch (Exception e) { e.printStackTrace(); return -1; } } }

使用方法:

int id = ResourceMan.getResId("icon",R.drawable.class);

 

posted @ 2017-12-07 16:50  )^程序猿^(  阅读(3271)  评论(0编辑  收藏  举报