如何从tablerow中识别特定组件

时间:2011-07-04 07:11:26

标签: android

对于EditText,我在下面提到了硬编码,但我如何检查Button,Spinner和其他组件......

for(int i=0; i< tbl.getChildCount(); i ++) {
    LinearLayout ll= (LinearLayout)tbl.getChildAt(i);
    TableRow tbr =(TableRow)ll.getChildAt(0);

    EditText edttxt = (EditText)tbr.getChildAt(1);
}

2 个答案:

答案 0 :(得分:2)

Object x = tbr.getChildAt(1);

if(x instanceof android.widget.EditText)

{

EditText edttxt =(EditText)tbr.getChildAt(1);

}

答案 1 :(得分:0)

创建组件时,请在每个组件上调用setId( someUniqueInt )。然后,您可以通过调用tbl.findViewById( someUniqueInt );来获取它们的句柄。

或者,只需在创建每个控件后保留对每个控件的引用,然后每次都不需要查找它。