如何在Android中将R.drawable String转换为R.drawable整数格式?

Kar*_*hik 2 string resources android integer type-conversion

我想将R.drawable当前以动态字符串格式转换为整数格式.如何完成.请引导我用一个片段来解决它.谢谢.

Integer[] images={R.drawable.apple,R.drawable.mango,R.drawable.banana};
Run Code Online (Sandbox Code Playgroud)

小智 12

你可以用它

String mDrawableName = "myimg";
int resID = getResources().getIdentifier(mDrawableName , "drawable", getPackageName());
Run Code Online (Sandbox Code Playgroud)

要么

String imageName = "picture";
int resID = getResources().getIdentifier(imageName, "drawable", "package.name");
ImageView image;
image.setImageResource(resID);
Run Code Online (Sandbox Code Playgroud)


Gir*_*air 10

你可以用它

public int[] getIntIds(Integer[] images){
    int[] temp = new int[images.length];
    String name;
    for(int i=0; i<= images.length; i++){
        name = getResources().getResourceEntryName(images[i]);
        temp[i] = getResources().getIdentifier(name , "drawable", getPackageName());
    }
    return temp;
}
Run Code Online (Sandbox Code Playgroud)