連番のリソース名から、リソースIDを取得したい
リストビューなんかで、
連番の画像なんかを表示したい時に、
うまいことpositionとかからリソースIDをひっぱってこれないかなー
とおもって、やってみました。
たとえば、
・postionが0の時、question_01.png,
・positionが1のとき、question_02.png,
・positionが11のとき、question_12.png
...
といった画像のリソースIDを、
drawableからひっぱってくるときには、
下記の通りにすればできます。
// リソースの名前の数字
int qn = (position % 20) + 1;
// リソース名を生成
String prefixRes = String.format("question_%02d", qn);
// リソース名からリソースIDをひっぱってくる
int resId = res.getIdentifier(prefixRes, "drawable", context.getPackageName());
これで、ソースコードもすっきりします。