Intereting Posts
Сохранение пользовательского интерфейса при изменении ориентации – onSaveInstanceState не работает, как ожидалось, если сохранить фрагмент Android: динамически менять кнопку FAB (плавающей кнопки) из кода Как узнать, что scrollview уже прокручивается вниз? Android 4.2.2 Устройство в автономном режиме Как изменить шрифт Webview в Android? Загрузка сглаживания изображений с использованием контекста приложения Не удается найти фрагмент по тегу В чем разница между getExtras и getBundleExtras? Сделайте линейную компоновку, выбранную как элемент списка в виде списка (Android) Сделать голосовое и видеозвонки через Интернет с помощью нашего приложения? Не удалось получить доступ к диспетчеру пакетов. Это система, работающая при установке приложения для Android Можно ли изменить левую выделенную кнопку в Selector xml? Как использовать кодировку Android MediaCodec Данные камеры (YUV420sp) Eclipse не распознает мое Android-устройство Реализация разрезания зефира

Найти все виды с тегом?

Я ищу, чтобы найти все виды в указанной деятельности, которые имеют тег «balloon», например, затем скрыть их, используя setVisibility to GONE .

Кто-нибудь знает, как получить список представлений с заданным тегом?

Solutions Collecting From Web of "Найти все виды с тегом?"

Ну вот:

 private static ArrayList<View> getViewsByTag(ViewGroup root, String tag){ ArrayList<View> views = new ArrayList<View>(); final int childCount = root.getChildCount(); for (int i = 0; i < childCount; i++) { final View child = root.getChildAt(i); if (child instanceof ViewGroup) { views.addAll(getViewsByTag((ViewGroup) child, tag)); } final Object tagObj = child.getTag(); if (tagObj != null && tagObj.equals(tag)) { views.add(child); } } return views; } 

Я уже ответил на это здесь: Android – как найти несколько просмотров с общим атрибутом

Один из подходов состоял бы в том, чтобы начать с родительской ViewGroup, перебрать ее дочерние элементы (и их дочерние элементы и т. Д.), А затем проверить теги на каждом из них.

Может ли этот API вызвать View # findViewWithTag help? Обратите внимание, что он возвращает только один вид …

Найдите детское представление с данным тегом. Если это представление имеет данный тег, верните это представление.

Вы можете настроить теги на свои виды следующим образом:

 someView.setContentDescription("MyTag"); 

А затем, чтобы найти все представления с этим тегом, вам нужно позвонить:

 ArrayList<View> outputViews = new ArrayList<>(); rootView.findViewsWithText(outputViews, "MyTag", FIND_VIEWS_WITH_CONTENT_DESCRIPTION);