问题
I build an Android app and I am trying to change the title's bar background and text colour.
In AndroidManifest.xml:
<application
...
android:theme="@style/ThemeSelector"
>
In styles.xml:
<style name="ThemeSelector" parent="android:Theme.Light">
<item name="android:windowTitleBackgroundStyle">@style/WindowTitleBackground</item>
</style>
<style name="WindowTitleBackground">
<item name="android:background">@color/titlebackgroundcolor</item>
<item name="android:textColor">@color/titletextcolor</item>
</style>
Using this code, I am managing to change the background colour but not the text colour.
Can you explain why this code does not work?
Thank you
回答1:
<style name="ThemeSelector" parent="android:Theme.Light">
<item name="android:windowTitleBackgroundStyle">@style/WindowTitleBackground</item>
<item name="android:windowTitleStyle">@style/CustomWindowTitle</item>
</style>
<style name="WindowTitleBackground">
<item name="android:background">@color/titlebackgroundcolor</item>
</style>
<style name="CustomWindowTitle" parent="WindowTitle">
<item name="android:textAppearance">@style/CustomWindowTitleText</item>
</style>
<style name="CustomWindowTitleText" parent="android:TextAppearance">
<item name="android:textColor">@color/titletextcolor</item>
</style>
<style name="WindowTitle">
<item name="android:singleLine">true</item>
<item name="android:textAppearance">@style/CustomWindowTitleText</item>
<item name="android:shadowColor">#BB000000</item>
<item name="android:shadowRadius">2.75</item>
</style>
来源:https://stackoverflow.com/questions/18624091/change-both-text-and-background-color-in-title-bar-android