如何在动态生成的Android布局中查找视图?

时间:2011-10-14 20:41:05

标签: android

我有一个 TableLayout ,我正在动态填充。

我正在扩展 TableRow 并添加一个名为getNextSibling()的函数;

(除非这是做错的方法,我很乐意改变)......

伪代码:

private TableRow getNextSibling(){
   TableLayout theTable = this.getParent();
   TableRow nextSib = theTable.getChildAt(
                        somehowGetMyIndexOrderInParentTable() + 1);
}

我不确定如何优雅地做到这一点......我可以在孩子们中寻找其中一个 == this ,然后看看是否有下一个......但是我猜是有一种更优雅的方式。

欢迎所有帮助。

3 个答案:

答案 0 :(得分:1)

http://developer.android.com/reference/android/view/View.html#setId(int)您可以以编程方式分配id,然后使用findViewById()。

答案 1 :(得分:1)

由于它是动态创建的,因此您可以使用View.setId()来设置视图的ID值。然后使用View.findViewById()检索它。

答案 2 :(得分:0)

迟到总比没有好,因为我正在研究如何创建自己的ID。

您可以保留自己的ID,然后将其用于setId。

<resources>
  <item type="id" name="dummy1"/>
  <item type="id" name="dummy2"/>
  <item type="id" name="dummy3"/>
</resources>