【发布时间】:2015-11-12 00:53:47
【问题描述】:
我正在处理我的操作栏,我正在尝试更改样式,我想要背景为白色,文本颜色为蓝色,我对 style.xml 执行以下操作:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/action_bar</item>
<item name="colorAccent">@color/top_bar</item>
<item name="colorPrimaryDark">@color/cyan_500</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:actionBarStyle">@style/MyActionBar</item>
</style>
<style name="MyActionBar"
parent="@style/Widget.AppCompat.Light.ActionBar">
<item name="android:actionBarSize">20dp</item>
<item name="android:background">@color/white</item>
<item name="android:titleTextStyle">@style/MyTitleTextBarStyle</item>
</style>
<style name="MyTitleTextBarStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
<item name="android:textColor">@color/colorRB</item>
</style>
</resources>
对于 API 15 到 22,什么都没有发生。 我已经设法通过这样做的代码来改变背景:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_reasonlocation);
android.support.v7.app.ActionBar mAb = getSupportActionBar();
mAb.setTitle(getString(R.string.reasonandlocation));
mCd.setColor(getResources().getColor(R.color.white));
mAb.setBackgroundDrawable(mCd);
...
}
如果您知道如何通过 style.xml 或代码解决此问题,我将不胜感激。
【问题讨论】:
标签: android android-actionbar android-appcompat