Android:动态循环布局项

时间:2013-05-05 21:42:40

标签: android layout

不确定头条是否描述了它,我想要的是:

我让我的布局中有9个TextViews,名为tv1,tv2,...,tv9。

当然我可以用

访问每一个
 TextView tv11 = (TextView) findViewById(R.id.tv1)

批量输入,所以我宁愿循环并循环遍历这些项目,但是如何将findViewbyId包含到循环中,我可以相应地更改值?

2 个答案:

答案 0 :(得分:2)

是否有任何理由不能对包含ViewGroup的子项进行迭代?因此,您可以获得getChildCount的孩子数量,然后您可以getChildAt访问每个孩子。

如果布局中有其他视图,您可能必须测试特殊子项是否为TextView的实例,但基本概念相当简单。

答案 1 :(得分:1)

您可以创建一个要循环的ID数组。

IE:

public static final int TEXTVIEW_IDS = { R.id.tv1, R.id.tv2, R.id.tv3, etc.. };

在您的观看代码中:

for (int id : TEXTVIEW_IDS) {
  ((Textview) findViewById(id)).CallYourMethod();
}

如果你不能做@James Holderness所建议的,这可能是一个合适的选择。