打jar包的时候,你会发现R文件中的资源不能访问因此,需要通过反射动态获取资源的id

/**     * 反射得到组件的id号     * @param packageName 包名     * @param className layout,string,drawable,style,id,color,array     * @param idName    唯一文件名     * @return  资源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) {            Log.e("Error", "缺少" + idName + "文件!");            e.printStackTrace();        }        return id;    }

示范(获取图片)

        ImageView iv = (ImageView) findViewById(R.id.imageView1);        int id = getCompentID("in.srain.cube.views.ptr", "drawable", "head");        iv.setImageResource(id);

更多相关文章

  1. Android存储(四):读写SD卡的文件
  2. Android官方文档之App Resources(下)
  3. EditTextView:取消焦点&自动获取焦点
  4. ClassNotFoundException: Didn't find class "XXXView" on path:
  5. TransitionDrawable的简单替换图片
  6. 【Android】OkHttp系列(一):发送请求与获取响应流程概述
  7. Android访问资源
  8. android 5.0 以上获取栈顶应用包名以及程序锁的实现
  9. Android之获取屏幕的三种方式

随机推荐

  1. Android多媒体学习一:Android中Image的简
  2. Android下使用Hessian与Java服务端通讯
  3. Binder研究之一   制定计划
  4. Android读写XML(中)——SAX
  5. [置顶] Android 定时任务的多种实现方式
  6. Android SystemProperties.get()和System
  7. Android数字签名?
  8. android 智能指针
  9. Java多种方式动态生成doc文档
  10. TV - 新的战场