Кастомная тема в 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>