ちょっと、そこ。私のアプリは64個のImageButton(8x8)の配列を使用する予定であり、それらはすべてXMLレイアウトでone1、two5、eight8などの名前ですでに宣言されています。Javaでこれらを個別に宣言するのではなく、私はそれを考えました。一部のforループでそれらすべてを宣言するのが賢明かもしれません。私は持っています
ImageButton musicGrid[][] = new ImageButton [8][8];
次に、R.id.whateverの代わりになる文字列を基本的に作成するネストされたforループがあります。割り当てを行うのは、ループの最後の行だけです。そのための正しい構文は何でしょうか、またはこれを行うことさえ不可能ですか(もしそうなら、64ボタングリッドをどのようにうまく処理できますか?)。ありがとう!
for (int i = 0; i < 8; i++) {
for (int j = 0; j < 8; j++) {
String btnID = "R.id.";
switch(i) {
case 0: btnID.concat("one"); break;
case 1: btnID.concat("two"); break;
case 2: btnID.concat("three"); break;
case 3: btnID.concat("four"); break;
case 4: btnID.concat("five"); break;
case 5: btnID.concat("six"); break;
case 6: btnID.concat("seven"); break;
case 7: btnID.concat("eight"); break;
}
switch(j) {
case 0: btnID.concat("1"); break;
case 1: btnID.concat("2"); break;
case 2: btnID.concat("3"); break;
case 3: btnID.concat("4"); break;
case 4: btnID.concat("5"); break;
case 5: btnID.concat("6"); break;
case 6: btnID.concat("7"); break;
case 7: btnID.concat("8"); break;
}
musicGrid[i][j] = (ImageButton) findViewById(btnID);
}
}