Вам нужно определить два стиля и установить там нужные атрибуты.Он чище и понятнее.А также хорошее поведение, чтобы установить свой собственный стиль в textview.
Вот пример, который вы должны сделать:
<style name="textStyle1" parent="android:TextAppearance">
<item name="android:textColor">@color/textColorPrimary</item>
<item name="android:textStyle">bold</item>
<item name="android:textAppearance">?android:attr/textAppearanceLarge</item>
<item name="android:gravity">start</item>
<item name="android:textSize">22sp</item>
</style>
<style name="textStyle2" parent="android:TextAppearance">
<item name="android:textColor">@color/textColorPrimaryDark</item>
<item name="android:textStyle">normal</item>
<item name="android:textAppearance">?android:attr/textAppearanceMedium</item>
<item name="android:gravity">start</item>
<item name="android:textSize">18sp</item>
</style>
Затем используйте этот стиль для ожидаемого просмотра текста, например так:
<TextView
android:id="@+id/tv_name"
style="@style/textStyleMedium"
........ />
Удалите теги ниже в вашем приложенииtheme:
<item name="android:textColorPrimary">#FF4081</item>
<item name="android:textColorSecondary">#186925</item>
<!-- <item name="android:textColor">#084fe9</item> -->
Назначение другого цвета:
TextColor - это просто атрибут xml для установки цвета текста любого данного представления.
TextColorPrimary - это цвет текста по умолчанию для включенных кнопок и больших текстовых представлений.
TextColorSecondary - это цвет текста по умолчанию для средних и маленьких текстовых представлений.
colorPrimaryDark - это цвет строки состояния.
Для этого необходимо удалить textColor
, который переопределяет другие цвета.
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
внутри вашего textView в xml.Затем он будет применять его ко всем вашим представлениям.Таким образом, вам не нужно устанавливать стиль для всех ..