我在 / resources / drawable 文件夹中有10个图像,如下所示;
pr1.gif
,pr2.gif
,... pr10.gif
我可以很容易地设置这样的图像;
imgview1.setImageResource(R.drawable.pr5);
但我不能像下面那样设置它;
int pr = getpr(dm);
imgview1.setImageResource(R.drawable.pr + pr);
有没有办法像这样设置它还是应该使用switch case?
答案 0 :(得分:0)
您可以使用getIdentifier()
按名称获取可绘制的ID:
String prefix = "pr";
int suffix = getpr(dm); // I assume this returns the image number
Resources res = getResources();
int resId = res.getIdentifier(prefix + suffix, "drawable", "my.package.name");
imgview1.setImageResource(resId);
请注意,您可以将此用于任何类型的资源,无论是可绘制的,字符串,数组等。只需确保将第二个参数从“drawable”更改为相应的类型。