Как я могу перебрать несколько видов кнопок? - PullRequest
2 голосов
/ 27 марта 2011

Скажем, например, я определил несколько кнопок в своем 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*/

Так, как я могу достичь вышеупомянутого в цикле?

1 Ответ

5 голосов
/ 27 марта 2011

Мой совет: создайте статический окончательный массив целых чисел, содержащий идентификаторы кнопок, например ::

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

Тогда вы можете повторить это.

...