我正在尝试将操作栏颜色设置为蓝色但始终为黑色,我正在使用样式的文件:styles.xml和styles-21.xml。 这是styles-21.xml中的代码:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<!-- Main theme colors -->
<!-- your app branding color for the app bar -->
<item name="android:colorPrimary">@color/blue_color_500</item>
<!-- darker variant for the status bar and contextual app bars -->
<item name="android:colorPrimaryDark">@color/blue_color_900</item>
<!-- theme UI controls like checkboxes and text fields -->
<item name="android:colorAccent">@color/purple_color_200</item>
<item name="android:actionBarStyle">@style/MyActionBar</item>
</style>
<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="@android:background">@color/blue_color_500</item>
<item name="background">@color/blue_color_500</item>
</style>
这是styles.xml的样式:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<!-- Customize your theme here. -->
<!-- Main theme colors -->
<!-- your app branding color for the app bar -->
<item name="colorPrimary">@color/blue_color_500</item>
<!-- darker variant for the status bar and contextual app bars -->
<item name="colorPrimaryDark">@color/blue_color_900</item>
<!-- theme UI controls like checkboxes and text fields -->
<item name="colorAccent">@color/purple_color_200</item>
<item name="android:windowBackground">@color/blue_color_50</item>
<item name="android:actionBarStyle">@style/MyActionBar</item>
</style>
<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">@color/blue_color_500</item>
<item name="background">@color/blue_color_500</item>
</style>
我的类继承自AppCompatActivity ...
有任何帮助吗? 提前谢谢。
答案 0 :(得分:0)
从官方Android文档中检查this link。在使用兼容性库时,您不仅应使用android:actionBarStyle
,还应使用actionBarStyle
。
答案 1 :(得分:0)
以下是更改操作栏颜色的方法:
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/mainColor</item>
<item name="colorPrimaryDark">@color/mainColorDark</item>
<item name="android:actionBarStyle">@style/MyActionBar</item>
<item name="android:actionBarWidgetTheme">@style/ActionBarWidget</item>
</style>
<style name="Widget.MyApp.ActionBar" parent="AppTheme">
<item name="theme">@style/ThemeOverlay.MyApp.ActionBar</item>
<item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
</style>
<style name="ThemeOverlay.MyApp.ActionBar" parent="ThemeOverlay.AppCompat.ActionBar">
<item name="android:textColorPrimary">@color/white</item>
</style>
<!-- ActionBar styles -->
<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
<item name="android:background">@color/mainColor</item>
</style>
<style name="ActionBarWidget" parent="Theme.AppCompat.Light.DarkActionBar"/>
<color name="mainColor">#E41F26</color>
操作栏将在最后定义的mainColor上着色!我希望它会有所帮助
答案 2 :(得分:0)
非常感谢,你说得对,这是代码修复它:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<!-- Customize your theme here. -->
<!-- Main theme colors -->
<!-- your app branding color for the app bar -->
<item name="colorPrimary">@color/blue_color_500</item>
<!-- darker variant for the status bar and contextual app bars -->
<item name="colorPrimaryDark">@color/blue_color_900</item>
<!-- theme UI controls like checkboxes and text fields -->
<item name="colorAccent">@color/purple_color_200</item>
<item name="android:windowBackground">@color/blue_color_50</item>
<item name="android:actionBarStyle">@style/MyActionBar</item>
</style>
<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">@color/blue_color_500</item>
<item name="background">@color/blue_color_500</item>
</style>