私は、いくつかの長い音を同時にではなく、一度に 1 つずつ再生する単純なサウンド ボードの Android アプリを開発しようとしています。サウンドパートは素晴らしい演奏をしています。各ボタンにテキストを割り当てたい。
次のようにstrings.xmlを設定しています。
<string name="quote01">quote01</string>
<string name="quote02">quote02</string>
<string name="quote03">quote03</string>
main.xml では、buttonIds を次のように設定しています。
final int[] buttonIds = { R.id.button01, R.id.button02, R.id.button03,
R.id.button04, R.id.button05, R.id.button06,
R.id.button07, R.id.button08, R.id.button09,
R.id.button10, R.id.button11, R.id.button12,
R.id.button13, R.id.button14, R.id.button15,
R.id.button16, R.id.button16, R.id.button17,
R.id.button18, R.id.button19, R.id.button20,
R.id.button21, R.id.button22, R.id.button23,
R.id.button24, R.id.button25 };
ボタンのテキストを次のように割り当てて、機能させることができます。
Button s01 = (Button) findViewById(R.id.button01);
s01.setText(this.getString(R.string.quote01));
Button s02 = (Button) findViewById(R.id.button02);
s02.setText(this.getString(R.string.quote02));
Button s03 = (Button) findViewById(R.id.button03);
s03.setText(this.getString(R.string.quote03));
しかし、コードの繰り返しを避けるためにループを使用したいと思います。以下のような非稼働ループがあります。
for(int i = 0; i < buttonIds.length; i++) { Button soundButton = (Button)findViewById(buttonIds[i]); soundButton.setText(this.getString(R.string.buttonIds[i]); }
しかし、上記の 3 行目では、buttonIds をフィールドに解決できません。buttonIds[1] を括弧または括弧で囲んでみましたが、構文が正しくありません。これは非常に簡単な質問だと思いますが、それは私を幻惑しています。助言がありますか?
前もって感謝します!Maytag87