操作栏颜色不会随 AppCompat 改变 v7:21
Action Bar color doesn't change with AppCompat v7:21
目前我正在尝试为 AppCompat 上的操作栏设置自定义背景颜色 v7:21。我已经尝试了很多可能性,直到现在我都不知道发生了什么。
这是我的 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>
我想通了!事实上,很多 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"
上使用它们,但没有用。它们必须放在 "root" <style>
元素中。正是这种错误让我写下了这个。
对不起我的英语水平。
目前我正在尝试为 AppCompat 上的操作栏设置自定义背景颜色 v7:21。我已经尝试了很多可能性,直到现在我都不知道发生了什么。
这是我的 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>
我想通了!事实上,很多 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"
上使用它们,但没有用。它们必须放在 "root" <style>
元素中。正是这种错误让我写下了这个。
对不起我的英语水平。