0

画像名の末尾に配列インデックスがある画像を参照するにはどうすればよいですか?これが私が働きたいコードです(しかし... :()

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

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

gronpil1.pngつまり、最初のループ、 2番目のループで画像をロードしたいと思いますgronpil2.png。これは配列の内容とは関係ありません。他のファイル名の末尾が必要なので、i変数を使用できません。これは、配列からのものである必要があります。

すべての助けをありがとう!

アンドレアス

4

2 に答える 2

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);
}
于 2012-05-09T08:31:49.673 に答える
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]);
}
于 2012-05-09T08:29:38.683 に答える