引用具有数组内容的图像

时间:2012-05-09 08:26:35

标签: java android

如何在图像名称的末尾引用带有数组索引的图像?这是我想要的代码(尽管...... :()

for (int i = 0; i < melodiToner.length; i++)

setImageResource(R.drawable.gronpil+melodiToner[i]);

即我想在第一个循环中加载图像gronpil1.png,在第二个循环中加载gronpil2.png。 这不是相对于数组内容,我需要一些其他文件名结尾所以我不能使用i变量,它必须来自数组。

感谢您的帮助!

安德烈亚斯

2 个答案:

答案 0 :(得分:1)

这种方式(短版):

for (int i = 0; i < melodiToner.length; i++) {
    int resId = getResources().getIdentifier("gronpil"+melodiToner[i], "drawable", getPackageName());
    setImageResource(resId);
}

更长的版本,因为在每个循环中都不会调用getResources和getPackageName一次:

Resources resources = getResources();
String packageName = getPackageName();
for (int i = 0; i < melodiToner.length; i++) {
    int resId = resources.getIdentifier("gronpil"+melodiToner[i], "drawable", packageName);
    setImageResource(resId);
}

答案 1 :(得分:0)

创建整数数组

int[] img = new int[5];

img[0] = R.drawable.no1;
img[1] = R.drawable.no2;
img[2] = R.drawable.no3;
img[3] = R.drawable.no4;
img[4] = R.drawable.no5;

(int i = 0; i < 5; i++){
    imgView.setImageResource(img[i]);
}