Android中的自定义主题

时间:2014-12-22 19:11:34

标签: android android-theme

我是Android的新手,并且有点坚持使用我的应用程序。我使用导航抽屉布局,所以我需要使用向后兼容的主题。我的主题如下:

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="android:actionBarStyle">@style/mycustomactionbar</item>
    </style>

    <style name="mycustomactionbar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
        <item name="android:background">#6FBC2C</item>
        <item name="android:textColor">#FFFFFF</item>
    </style>

</resources>

然而,当我运行代码时,我的操作栏的颜色保持不变,但我没有收到任何错误。我怎么能调试这样的东西?构建时没有错误

1 个答案:

答案 0 :(得分:2)

如果您正在使用当前的AppCompat库(版本21. +,使用Material主题),则可以使用以下代码为主题重新着色。

您可以直接在您的样式中指定颜色。但我更喜欢对颜色使用单独的定义,因此您也可以在代码中使用它们。

<color name="primary">@color/material_brown_500</color>
<color name="primaryDark">@color/material_brown_700</color>
<color name="accent">@color/material_pink_A200</color>

<style name="My.Theme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primaryDark</item>
    <item name="colorAccent">@color/accent</item>
</style>


<color name="material_brown_500">#795548</color>
<color name="material_brown_700">#5D4037</color>
<color name="material_pink_A200">#FF4081</color>