Получение идентификаторов виджетов в цикле - PullRequest
0 голосов
/ 06 января 2011

Мне нужно найти способ изменить атрибуты виджетов из цикла for. В частности, мне нужно пройти и динамически изменить текст на каждой кнопке в серии.

Изменение текста не имеет значения, я могу сделать это с помощью одной кнопки очень легко, но как я могу получить этот цикл, чтобы правильно найти следующую кнопку? Кажется, это должна быть прямая ссылка на кнопку, но у меня нет возможности просто что-то увеличить и получить следующий идентификатор кнопки.

В худшем случае я могу позаботиться о каждой кнопке в отдельности, но это, очевидно, очень неаккуратно, и это не тот код, к которому я хочу привыкнуть, поэтому любая помощь приветствуется.

1 Ответ

2 голосов
/ 06 января 2011

Если я понимаю ваш вопрос, вы хотите, чтобы все дети набрали ViewGroup, например LinearLayout.Вы можете использовать что-то вроде:

for(int i = 0; i < viewGroup.getChildCount(); i++)
{
    View child = viewGroup.getChildAt(i);
    if(child.getClass() == Button.class)
    {
        // do whatever you need to do
    }
}
...