How to set an imageView's image from a string?

前端 未结 4 891
北荒
北荒 2020-11-30 04:02

I have a list of entries and some bitmap files in the res/drawable-mdpi directory. I\'m trying to load the image corresponding to the string value selected from the list by

相关标签:
4条回答
  • 2020-11-30 04:16

    You can Create Common Function for getting image drawable like this:

    public static Drawable getDrawable(Context mContext, String name) {
            int resourceId = mContext.getResources().getIdentifier(name, "drawable", mContext.getPackageName());
            return mContext.getResources().getDrawable(resourceId);
        }
    
    0 讨论(0)
  • 2020-11-30 04:29

    if you have the image in the drawable folder you are going about this the wrong way.

    try something like this

    Resources res = getResources();
    String mDrawableName = "logo_default";
    int resID = res.getIdentifier(mDrawableName , "drawable", getPackageName());
    Drawable drawable = res.getDrawable(resID );
    icon.setImageDrawable(drawable );
    
    0 讨论(0)
  • 2020-11-30 04:33

    No need to use getDrawable() you directly use the resource id like

    String mDrawableName = "myimageName"; int resID = res.getIdentifier(mDrawableName , "drawable", getPackageName()); imgView.setImageResource(resID);

    0 讨论(0)
  • 2020-11-30 04:33
    ImageView img = (ImageView) findViewById(R.id.{ImageView id});
    img.setImageResource(getResources().getIdentifier("ImageName","drawable",getPackageName()));
    
    0 讨论(0)
提交回复
热议问题