Как получить список идентичных компонентов представления

#java #android #view

Вопрос:

Можно ли как-то взять массив, например, текстовое представление, которые находятся в текущем действии, или необходимо брать каждое представление?

Ответ №1:

Вы можете получить все представления вашего xml программно, как показано ниже:

  • свяжите свой макет группы просмотра / родительского макета
  • Тогда дочернее представление доступно в условии if

    контейнер val = findViewById(R. id.контейнер) в качестве группы просмотра

          for (i in 0 until container.childCount) {
             val v = container.getChildAt(i)
             if (v is Button) {
                 // You will get Button here
             }
             else if(v is TextView){
                 // You will get textView here
             }         
         }
     

Комментарии:

1. Можете ли вы написать этот код на Java, пожалуйста?))

2. ViewGroup container = (ViewGroup) findViewById(R.id.container); for (int i = 0; i < container.getChildCount(); i ) { View v = container.getChildAt(i); if (!(v instanceof Button)) { } else { } }