J'ai une interface utilisateur comme ceci:comment obtenir tous vue enfant direct et hirechery dans Android
<RelativeLayout>
<TextView />
<RelativeLayout>
<TextView />
<TextView />
<LinearLayout>
<TextView />
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
Je veux accéder à tous TextViews programme et changer certains attributs, mais Je ne veux pas utiliser id et findViewById , parce que j'ai une mise en page multi que je veux effectuer les mêmes changements en eux, à savoir: changer les polices de TextViews.
Comment puis-je accéder à tous les TextViews, qu'ils soient directs ou hiérarchiques, comme RelativeLayout dans une boucle ou dans une liste?
Il serait trivial d'écrire un algorithme récursif (ou même linéaire) pour passer au-dessus de la hiérarchie des vues. La plupart de la solution est déjà décrite [ici] (http://stackoverflow.com/questions/18668897/android-get-all-children-elements-of-a-viewgroup/). Tout ce que vous devez faire est d'ajouter une vérification de type pour le type d'affichage particulier qui vous intéresse. –