Android. Поиск по тегу

У меня есть динамически созданный View и вы хотите найти его по тегу, возможно ли это? Я знаю функцию findViewById, есть ли что-то подобное для тегов?

Ответ 1

LinearLayout linLayout = (LinearLayout)findViewWithTag("layout1");

но я не думаю, что вам нужен тег для динамического просмотра. Вы можете получить динамический ресурс, выполнив следующий код

for (int i=0; i < total_resource; i++) {
  //retrieve id dynamically
  int id = getResources().getIdentifier("resource"+i, "id", getPackageName());
  TextView myText = (TextView) findViewById(id); // get the element
}

Ответ 2

Создайте файл ids.xml для хранения вашего id:

<?xml version="1.0" encoding="utf-8"?> <resources> <item type="id" name="component1" /> <item type="id" name="component2" /> <item type="id" name="component3" /> </resources>

Установите динамически созданный компонент, например:

Button1.setId(R.id.layout1); buttom2.setId(R.id.layout2); button3.setId(R.id.layout3);

Другим способом является установка тега на ваш компонент при динамическом создании

button1.setTag(1);

И используйте getTag() для получения этого компонента