Увеличить шестнадцатеричное значение элемента файла R.id

У меня есть несколько последовательных идентификаторов элементов, объявленных внутри файлов R.java. Теперь мне нужно заполнить каждый из них, используя цикл for, поэтому мне нужно увеличивать для каждой итерации значение id. Я написал это:

int current_id = R.id.button00;
for (int i = 0; i < values.length; i++) {
    TextView to_fill = (TextView) (getActivity().findViewById(current_id));
    to_fill.setText(String.valueOf(values[i]));
    current_id++;
}

но таким образом current_id не увеличивается правильно. Как я могу сделать?

1 ответ

Нет гарантии, что сгенерированные идентификаторы в R будут последовательными или что они будут сгенерированы в любом конкретном порядке.

Я рекомендую помещать ваши идентификаторы в ресурс массива следующим образом:

<array name="button_id_array">
    <item>@id/button00</item>
    <item>@id/button01</item>
    <item>@id/button02</item>
</array>

Затем вы можете получить к нему доступ в коде так:

int[] ids = getResources().getIntArray(R.array.test);
Другие вопросы по тегам