我想自定义工具栏的颜色,但自定义样式更改工具栏不工作。
我使用appcompat 'com.android.support:appcompat-v7:22.1.1'
在工具栏中我设置:
<android.support.v7.widget.Toolbar
android:theme="@style/StyleTest"
(我也尝试app:theme但这些也没有效果)
这是我的工具栏样式:
<style name="StyleTest" parent="Theme.AppCompat.NoActionBar">
<item name="android:textColorPrimary">@color/green</item>
<item name="actionMenuTextColor">@color/yellow</item>
<item name="android:textColorSecondary">@color/red</item>
</style>
和这个样式不起作用。但是,当我改变我的应用程序的风格项目,这也改变了工具栏(而工具栏有自己的风格在android:主题值)。例如,当我改变应用程序样式项目"textColorSecondary"这也改变了工具栏中的后退箭头,但我想在工具栏样式和应用程序样式不同的颜色。这是应用程序样式:
<!-- Application theme. -->
<style name="AppTheme" parent="MaterialDrawerTheme.Light.DarkToolbar">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
<!-- colorPrimary is a toolbar background -->
<item name="colorPrimary">#5EB1F7</item>
<!-- colorAccent color of pressed widget -->
<item name="colorAccent">@color/blue_dark</item>
<item name="actionModeBackground">@color/black_half_transparent</item>
<item name="android:textColor">@color/black</item>
<!-- textColorPrimary is a color of the title for Toolbar -->
<item name="android:textColorPrimary">@color/white</item>
<!-- colorPrimaryDark is a color for lollipop system bar -->
<item name="colorPrimaryDark">@color/material_drawer_background</item>
<!-- android:textColorSecondary is the color of the back arrow and menu
overflow icon (three vertical dots) -->
<item name="android:textColorSecondary">@color/blue</item>
</style>
当我改变应用程序样式项时,例如colorPrimary或textColorPrimary或textColorSecondary,这适用于工具栏,但工具栏自己的样式被忽略。如何将自定义样式应用到工具栏?
在xml中使用app:theme
,并从StyleTest的属性中删除android:
前缀
我猜你需要这样使用style:
<android.support.v7.widget.Toolbar
style="@style/StyleTest" />
知道style
没有android:
前缀