【发布时间】:2015-03-23 07:56:16
【问题描述】:
我有这样的用户界面:
<RelativeLayout>
<TextView />
<RelativeLayout>
<TextView />
<TextView />
<LinearLayout>
<TextView />
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
我想以编程方式访问所有 TextView 并更改一些属性,但是 我不想使用 id 和 findViewById,因为我有一个多布局,我想在其中执行相同的更改,即:更改 TextViews 的字体。
如何访问所有 TextView,无论是直接视图还是层次视图,例如循环或列表中的 RelativeLayout?
【问题讨论】:
-
编写一个递归(甚至是线性)算法来遍历视图层次结构是微不足道的。大多数解决方案已经在here 中进行了概述。您需要做的就是为您感兴趣的特定视图类型添加一些类型检查。
标签: android android-ui