目前我正在尝试在AppCompat v7:21上为Action Bar设置自定义背景颜色。我已经尝试了很多可能性,直到现在我还无法弄清楚发生了什么。
这是我的res/values/styles.xml
:
<resources>
<color name="action_bar">#000</color>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light">
<!-- Customize your theme here. -->
<item name="actionBarStyle">@style/MyActionBar</item>
</style>
<!-- ActionBar styles -->
<style name="MyActionBar" parent="Widget.AppCompat.Light.ActionBar">
<item name="android:background">@color/action_bar</item>
</style>
</resources>
答案 0 :(得分:4)
我已经想通了!事实上,很多UI的东西都在API 21上发生了变化,AppCompat v7也是如此。你可以设置 动作栏颜色(以及其他)如下:
<!-- extend one of the Theme.AppCompat themes -->
<style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
<!-- customize the color palette -->
<item name="colorPrimary">@color/material_blue_500</item>
<item name="colorPrimaryDark">@color/material_blue_700</item>
<item name="colorAccent">@color/material_green_A200</item>
</style>
color*
键定义相关视图的颜色,提供在Lollipop上观察到的视觉一致性,即:不可能(从我的试验和错误中检查),在使用AppCompat v7时单独设置这些颜色,就像我一样我试图这样做。
Obs。:我已经尝试过几小时前在<style>
parent="Widget.AppCompat.Light.ActionBar"
上使用它们,而<style>
并不起作用。它们必须放在&#34; root&#34; {{1}}元素。正是这种错误让我写下了这个。
对不起我的英语技能。