我想定义一种样式,该样式为Activity
的背景色提供一种颜色,而主题的背景为ActionBar
提供另一种颜色。据说,actionBarStyle
/ android:actionBarStyle
属性应该已经适应了这一点,但是我尝试过的许多变体都没有产生预期的结果。
某些代码:
AndroidManifest:
<activity
android:name=".activities.SettingsActivity"
android:label="Settings"
android:theme="@style/LightToolbar" />
样式:
<style name="LightToolbar" parent="Theme.AppCompat.Light">
<item name="android:background">@color/in_app_background</item>
<item name="android:textColorPrimary">@color/Gray</item>
<item name="actionBarStyle">@style/WhiteToolbar</item>
</style>
<style name="WhiteToolbar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid">
<item name="android:background">@color/White</item>
</style>
出于某种原因,此代码使ActionBar
的背景为@color/in_app_background
,而不是样式中指定的@color/White
。我尝试过的其他变化会导致阴影消失,或者ActionBar
标题消失。
为什么会发生这些问题?如何实现预期的行为?