我正在尝试更改ActionBar的背景颜色以及标题颜色。我必须说我正在使用支持库。
我的风格如下。
<style name="AppTheme" parent="Theme.AppCompat.Light">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionModeOverlay">true</item>
<item name="android:actionBarStyle">@style/AppTheme.ActionBar</item>
</style>
<style name="AppTheme.ActionBar" parent="@style/Widget.AppCompat.ActionBar.Solid">
<item name="background">@color/red_300</item>
<item name="android:background">@color/red_300</item>
<item name="colorPrimary">@color/red_300</item>
<item name="android:titleTextStyle">@style/AppTheme.ActionBar.Title</item>
</style>
<style name="AppTheme.ActionBar.Title" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
<item name="android:textColor">@color/red_700</item>
<item name="android:textColorPrimary">#00FF00</item>
</style>
并在styles-v21
中<style name="AppTheme.ActionBar" parent="@style/Widget.AppCompat.ActionBar.Solid">
<item name="background">@color/red_300</item>
<item name="android:background">@color/red_300</item>
<item name="colorPrimary">@color/red_300</item>
<item name="android:colorPrimary">#FF0000</item>
<item name="android:colorAccent">#FF0000</item>
<item name="android:titleTextStyle">@style/AppTheme.ActionBar.Title</item>
</style>
<style name="AppTheme.ActionBar.Title" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
<item name="android:colorPrimary">#FFFF00</item>
<item name="android:colorAccent">#FFFF00</item>
<item name="android:textColor">@color/red_700</item>
<item name="android:textColorPrimary">#00FF00</item>
</style>
正如你们可能会看到改变它的尝试数量,我已经失去了理智。关于如何更改ActionBar背景及其标题颜色的任何线索?
我必须注意到我在Android 6上尝试这个。
答案 0 :(得分:1)
在ToolBar创建(xml)中,设置app:theme
修复它。使用它的colorPrimary指定一个主题改变了ActionBar的背景而不影响基本主题。
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
和主题:
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.ActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
</style>