Изменить стиль всех TextViews в макете - PullRequest
0 голосов
/ 25 марта 2020

У меня есть макет со многими TextViews и темным фоном, поэтому я хочу изменить цвет текста all TextViews на более светлый.

Есть ли способ сделать это, кроме перехода к каждому из них и установки android:textColor='white'?

изменить шрифт всех текстовых представлений задает аналогичный вопрос, но это с 2014 года, и там нет реального ответа.

1 Ответ

0 голосов
/ 25 марта 2020

Я нашел ответ, когда набирал вопрос.

Вы хотите настроить внешний вид TextViews через ресурс стиля, а не вручную. Затем значение стиля должно наследоваться от другого, представляющего весь макет.

<TextView ...
      android:textAppearance="@style/item_name"/>
<TextView ...
      android:textAppearance="@style/item_details"/>

в стиле. 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>
...