增加R.id文件元素的十六进制值

时间:2014-02-12 15:40:35

标签: android android-identifiers

我在R.java文件中声明了一些连续的元素id。现在我需要使用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 个答案:

答案 0 :(得分:1)

无法保证R中生成的ID将是顺序的,或者它们将以任何特定顺序生成。

我建议将您的ID放在数组资源中,如下所示:

<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);