如何更改 Material Design ActionBar 的文本?
Posted
技术标签:
【中文标题】如何更改 Material Design ActionBar 的文本?【英文标题】:How do I change the text of the Material Design ActionBar? 【发布时间】:2014-06-30 15:09:00 【问题描述】:我正在尝试使用新的 Material Design 制作一个 android 应用程序,但我不知道如何更改 ActionBar 上文本的颜色。
我有这个:
<style name="AppTheme" parent="@android:style/Theme.Material.Light">
<item name="android:colorPrimary">#ff3d00</item>
<item name="android:colorPrimaryDark">#dd2c00</item>
<item name="android:colorAccent">#ff3d00</item>
</style>
但是看起来像这样:
我不太喜欢橙色背景上的黑色文字。我试着这样做:
<style name="AppTheme" parent="@android:style/Theme.Material">
<item name="android:colorPrimary">#ff3d00</item>
<item name="android:colorPrimaryDark">#dd2c00</item>
<item name="android:colorAccent">#ff3d00</item>
</style>
看起来像这样:
如您所见,ActionBar 文本的颜色确实发生了变化,但背景变成了灰色,这是我不喜欢的。
我应该怎么做呢?提前致谢!
【问题讨论】:
【参考方案1】:我认为在这种情况下,将样式更改为 Theme.Material.Light.DarkActionBar 就足够了。您将获得浅色的界面元素,但是带有浅色标题文本的“深色”ActionBar。
【讨论】:
感谢修复! 出于好奇,改变 windowBackground 颜色是否也有效?从这里标记的数字:developer.android.com/preview/material/theme.html 文字颜色可以改成别的吗? DarkActionBar 给了我与 API 17 的向后兼容性问题【参考方案2】:在您的 build.grade 项目依赖项中添加 appcompat-v7:21.0.0
..
dependencies
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:21.0.0'
compile 'com.android.support:support-v4:21.0.0'
.....
然后从 appcompat 继承你的风格
<style name="AppTheme" parent="@style/Theme.AppCompat">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
........
</style>
【讨论】:
以上是关于如何更改 Material Design ActionBar 的文本?的主要内容,如果未能解决你的问题,请参考以下文章
在 WPF 中更改 Material Design DatePicker 的外观
如何使用Material Design在Alert Dialog Fragment中设置按钮样式?