使用Theme.AppCompat

时间:2015-06-07 12:54:42

标签: android android-appcompat android-theme

我要做的就是让动作栏和状态栏改变颜色以进行材料设计。以下是我创建的主题:

 <!-- Base application theme. -->
<style name="AppTheme2" parent="Theme.AppCompat">
    <!-- colorPrimary is used for the default action bar background -->
    <item name="android:colorPrimary">#FF5722</item>
    <!--<item name="android:statusBarColor">#E64A19</item>-->

    <!-- colorPrimaryDark is used for the status bar -->
    <item name="android:colorPrimaryDark">#E64A19</item>


    <!-- colorAccent is used as the default value for colorControlActivated
         which is used to tint widgets -->
    <item name="android:colorAccent">#FF9800</item>

    <!-- You can also set colorControlNormal, colorControlActivated
         colorControlHighlight & colorSwitchThumbNormal. -->

</style>

但是,运行状态栏会改变颜色,但操作栏仍为黑色。我知道可能有一个简单的答案,但我错过了什么?

此问题与建议的问题不重复。请删除标志。

2 个答案:

答案 0 :(得分:5)

由于您使用的是AppCompat,因此应使用AppCompat属性,而不是Android系统属性。

更改

android:colorPrimary

colorPrimary

整个事情应该是这样的:

<!-- Base application theme. -->
<style name="AppTheme2" parent="Theme.AppCompat">
    <!-- colorPrimary is used for the default action bar background -->
    <item name="colorPrimary">#FF5722</item>

    <!-- colorPrimaryDark is used for the status bar -->
    <item name="colorPrimaryDark">#E64A19</item>

    <!-- colorAccent is used as the default value for colorControlActivated
         which is used to tint widgets -->
    <item name="colorAccent">#FF9800</item>
</style>

答案 1 :(得分:1)

android:移除colorPrimaryappcompat-v7在我的主题中没有使用android:前缀,最后我查了一下。