2

たとえば、XML ファイルでいくつかのボタンを定義し、最初はそれらを無効に設定したとします。

<Button 
android:text="Off"
android:id="@+id/Button0"
android:enabled="false">
</Button>
<Button android:text="Off"
android:id="@+id/Button1"
android:enabled="false">
</Button>
<Button android:text="Off"
        android:id="@+id/Button2"
    android:enabled="false">
</Button>
<Button android:text="Off"
    android:id="@+id/Button3"
        android:enabled="false">
</Button>

コードの後半で、すべてのボタンを有効にしたいので、理想的にはこれをループで実行する必要がありますが、ループ内のボタンにアクセスする方法がわかりません。たとえば、いくつかのステートメントを入れたくありません。

Button b = (Button)findViewById(R.id.Button0);
/* Do some action on button0 */
b = (Button)findViewById(R.id.Button1);
/* Do some action on button1 */
/* And continue with explicit statements for each button*/

では、どうすれば上記をループで達成できますか?

4

1 に答える 1

5

私のアドバイス: ボタンの ID を含む整数の静的な最終配列を作成します。

private static final int[] BUTTONS = {
    R.id.Button0,
    R.id.Button1,
    ...
};

その後、それを繰り返すことができます。

于 2011-03-27T10:43:56.373 に答える