В настоящее время я пытаюсь установить особый цвет фона в панели действий на AppCompat v7: 21. Я пробовал много возможностей, и до сих пор я не могу понять, что происходит.
Это мои res/values/styles.xml
:
<resources>
<color name="action_bar">#000</color>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light">
<!-- Customize your theme here. -->
<item name="actionBarStyle">@style/MyActionBar</item>
</style>
<!-- ActionBar styles -->
<style name="MyActionBar" parent="Widget.AppCompat.Light.ActionBar">
<item name="android:background">@color/action_bar</item>
</style>
</resources>
Я понял! На самом деле, много пользовательских интерфейсов изменилось в API 21 и т.д. AppCompat v7. Вы можете установить цвета Action Bar (среди прочих) следующим образом:
<!-- extend one of the Theme.AppCompat themes -->
<style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
<!-- customize the color palette -->
<item name="colorPrimary">@color/material_blue_500</item>
<item name="colorPrimaryDark">@color/material_blue_700</item>
<item name="colorAccent">@color/material_green_A200</item>
</style>
Если color*
определяют цвета для связанных представлений, обеспечивая визуальную согласованность, наблюдаемую на Lollipop, то есть: невозможно (проверено из моей пробной версии и ошибки), устанавливайте такие цвета индивидуально при использовании AppCompat v7, как я пытался это сделать.
Обсервованный : Я попытался использовать их, несколько часов назад, в <style>
с parent="Widget.AppCompat.Light.ActionBar"
который не работает. Они должны быть помещены в элемент "root" <style>
. Именно эта ошибка заставила меня написать это.
Извините за свои знания английского языка.
Toolbar
? Если это так, вы устанавливаете цвет фона для представления в макете.