Как определить конкретный компонент из таблицы

1

Для 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);
}
  • 0
    Пожалуйста, опубликуйте детали вашего макета, чтобы мы могли видеть другие компоненты, которые вы пытаетесь найти.
  • 0
    На самом деле компонент должен создаваться динамически, поэтому нет правильной структуры макета. Единственное, что мне нужно знать, это то, как ... как различать разные компоненты.
Теги:

2 ответа

2

Объект x = tbr.getChildAt(1);

if (x instanceof android.widget.EditText)

{

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

}

0

При создании компонентов вызовите setId( someUniqueInt ) для каждого. Затем вы можете обращаться с ними, вызывая tbl.findViewById( someUniqueInt ); ,

Кроме того, просто держите ссылку на каждый элемент управления после его создания, а затем нет необходимости каждый раз искать его.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню