Java 为ImageView src分配可绘制名称

Java 为ImageView src分配可绘制名称,java,android,android-drawable,Java,Android,Android Drawable,简单一点:我从一个JSON文件中获得了可绘制名称,现在位于一个变量中,如何将正确的可绘制名称分配给一个名为字符串的ImageView?我们可以假设具有该名称的可绘制文件始终存在 String image_name = "image1.png"; ImageView imageView = (ImageView)view.findViewById(R.id.myImageView); imageView.setImageResource(image_name); // FAIL since is

简单一点:我从一个JSON文件中获得了可绘制名称,现在位于一个变量中,如何将正确的可绘制名称分配给一个名为
字符串的
ImageView
?我们可以假设具有该名称的可绘制文件始终存在

String image_name = "image1.png";

ImageView imageView = (ImageView)view.findViewById(R.id.myImageView);
imageView.setImageResource(image_name); // FAIL since is expecting the drawable and not the name as a String.

传递
字符串源代码
并获取可绘制的

private Drawable getImage(String source){
        File imgFile = new File(source);//Absolute path
        Bitmap myBitmap = null;
        Drawable drawable = null;
        if(imgFile.exists()) {
            myBitmap= BitmapFactory.decodeFile(imgFile.getAbsolutePath());
            drawable = new BitmapDrawable(mContext.getResources(),myBitmap);
        }
        return  drawable;
    }

谢谢你,伙计!这并不违背我的逻辑,而且比其他答案更简单,因为我不需要创建其他对象
private Drawable getImage(String source){
        File imgFile = new File(source);//Absolute path
        Bitmap myBitmap = null;
        Drawable drawable = null;
        if(imgFile.exists()) {
            myBitmap= BitmapFactory.decodeFile(imgFile.getAbsolutePath());
            drawable = new BitmapDrawable(mContext.getResources(),myBitmap);
        }
        return  drawable;
    }