Кастомная тема в Android

Я новичок в Android и застрял в своем приложении. Я использую Layout Navigation Drawer, поэтому мне нужно использовать обратно совместимую тему. Моя тема следующая:

<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 ответ

Решение

Если вы используете текущую библиотеку 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>
Другие вопросы по тегам