Encuentra todas las vistas con la etiqueta?

Estoy buscando encontrar todas las vistas en una actividad específica que tienen la etiqueta “globo” por ejemplo, luego ocultarlas usando setVisibility para GONE .

¿Alguien sabe cómo recuperar una lista de vistas con una etiqueta determinada?

Aqui tienes:

 private static ArrayList getViewsByTag(ViewGroup root, String tag){ ArrayList views = new ArrayList(); 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; } 

Ya lo he respondido aquí: Android: cómo encontrar vistas múltiples con un atributo común

Puede establecer tags para sus vistas de esta manera:

 someView.setContentDescription("MyTag"); 

Y luego, para encontrar todas las vistas con esa etiqueta, debe llamar:

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

Un enfoque sería comenzar con el ViewGroup padre, recorrer sus hijos (y sus hijos, etc.) y luego verificar las tags en cada uno de ellos.

¿Podría esta API llamar a View # findViewWithTag ? Tenga en cuenta que solo devuelve una vista …

Busque una vista secundaria con la etiqueta dada. Si esta vista tiene la etiqueta dada, devuelva esta vista.