Android中通过反射获取资源Id(特别用在自己定义一个工具将其打成.jar包时,特别注意资源的获取)

Android技术篇 尼古拉斯.赵四 6162℃ 0评论

在将自己写的工具打成.jar包的时候,有时候会需要引用到res中的资源,这时候不能将资源一起打包,只能通过反射机制动态的获取资源.

/**
 * 反射得到组件的id号
 */
public static int getCompentID(String packageName, String className,String idName) {
	int id = 0;
	try {
		Class<?> cls = Class.forName(packageName + ".R$" + className);
		id = cls.getField(idName).getInt(cls);
	} catch (Exception e) {
		LogUtil.LogPrint(LogUtil.LOG_ERROR, "缺少" + idName + "文件!");
		e.printStackTrace();
	}
	return id;
}

 

关注微信公众号,最新技术实时推送

转载请注明:尼古拉斯.赵四 » Android中通过反射获取资源Id(特别用在自己定义一个工具将其打成.jar包时,特别注意资源的获取)

喜欢 (6)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址