我的布局中有许多TextViews和深色背景,所以我想将all TextViews的文本颜色更改为浅色。
除了逐个设置android:textColor='white'
以外,还有其他方法吗?
[change font of all textviews在问类似的问题,但这是从2014年开始的,那里没有真正的答案。
我在输入问题时找到了答案。
您想通过样式资源而不是手动设置TextView的外观。然后,让样式值继承自另一个样式值,代表整个布局。
<TextView ...
android:textAppearance="@style/item_name"/>
<TextView ...
android:textAppearance="@style/item_details"/>
在style.xml中:
<style name="LayoutStyle">
<item name="android:textColor">#C0C0C0</item>
</style>
<style name="item_name" parent="LayoutStyle">
<item name="android:textStyle">bold</item>
<item name="android:textSize">20sp</item>
</style>
<style name="item_details" parent="LayoutStyle">
<item name="android:textStyle">bold</item>
<item name="android:textSize">20sp</item>
</style>