Czy istnieje sposób na zmianę stylu w zależności od tego, jaki temat jest ustawiony w działaniu? Na przykład, załóżmy, że moja działalność ma TextView ze stylem określonym celu TextViewStyleAndroid - przesłonięcie stylu na jeden motyw
<TextView
style="@style/TextViewStyle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Text"/>
To mój TextViewStyle
<style name="TextViewStyle" parent="android:style/Widget.TextView">
<item name="android:textStyle">bold</item>
<item name="android:textSize">8sp</item>
<item name="android:textColor">@android:color/holo_blue_dark</item>
</style>
W moim Styles.xml Mam dwa tematy
<style name="AppThemeLight" parent="android:Theme.Material.Light">
</style>
<style name="AppThemeDark" parent="android:Theme.Material">
</style>
teraz , gdy mój motyw jest ustawiony na Dark, chcę, aby ten motyw zastąpił niektóre wartości ustawione w moim TextViewStyle. Jak mogłem to zrobić? Próbowałem następujących, ale nie działa
<!-- Override TextViewStyle style for AppThemeLight-->
<style name ="AppThemeLight.TextBlockStyle" parent="@style/TextBlockStyle">
<item name="android:textColor">@color/my_purple</item>
<item name="android:textSize">20sp</item>
</style>
<!-- Override TextViewStyle style for AppThemeDark-->
<style name ="AppThemeDark.TextBlockStyle" parent="@style/TextBlockStyle">
<item name="android:textColor">@color/my_green</item>
<item name="android:textSize">40sp</item>
</style>
hmm nie wiem, mam co masz na myśli ... czy możesz podać mały przykład? Chcę mieć możliwość przesłonięcia domyślnego textStyle na temat. – AhmedW
Spróbuj coś w stylu: @ style/yourTextViewStyle Wewnątrz swojego stylu aktywności –
Exception