我在我的Android应用中使用自定义操作栏。我试图给它一个自定义主题,但它不起作用。
app_bar.xml:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.v7.widget.Toolbar>
app_bar
包含在action_main.xml中:
<include
android:id="@+id/app_bar"
layout="@layout/app_bar"
/>
styles.xml 没有操作栏作为父级:
<resources>
<!-- inherit from the material theme -->
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<!-- Main theme colors -->
<!-- your app branding color for the app bar -->
<item name="colorPrimary">@color/primary</item>
<!-- darker variant for the status bar and contextual app bars -->
<item name="colorPrimaryDark">@color/primary_dark</item>
<!-- theme UI controls like checkboxes and text fields -->
<item name="colorAccent">@color/accent</item>
</style>
</resources>
在android清单文件中我使用上面的主题:
android:theme="@style/AppTheme"
在主要活动中:
toolbar = (Toolbar) findViewById(R.id.app_bar);
toolbar.setLogo(R.mipmap.ic_launcher);
toolbar.setTitle(" Ringtone Control");
setSupportActionBar(toolbar);
但是,我没有获得自定义主题颜色。我错过了什么?
答案 0 :(得分:0)
每this +Android Developers Pro-tip,如果您使用的是Toolbar
,则需要专门设置背景颜色:
<android.support.v7.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary" />
默认情况下,只有默认操作栏会获得colorPrimary
。