Как установить пользовательский цвет / стиль ActionBar?
Я использую Android Navigation bar
в своем проекте, я хочу изменить верхний цвет в панели действий на что-то красное. Как я могу это сделать? У меня есть что-то вроде этого,
и я хочу что-то вроде этого,
- Android: 2 или более ExpandableListView внутри навигационного ящика
- Ящик навигации с поддержкой обратной совместимости
- Переключение между изображениями Android Navigation Drawer и Up caret при использовании fragmentов
как я могу это достичь?
Вы можете определить цвет ActionBar (и других вещей), создав собственный стиль :
Просто отредактируйте файл res / values / styles.xml вашего проекта Android.
Например, например:
Затем установите «MyCustomTheme» как тему вашей деятельности, которая содержит ActionBar.
Вы также можете установить цвет для ActionBar следующим образом:
ActionBar actionBar = getActionBar(); actionBar.setBackgroundDrawable(new ColorDrawable(Color.RED)); // set your desired color
Взято отсюда: Как изменить цвет фона ActionBar ActionBarActivity с помощью XML?
В общем, Android OS использует «тему», чтобы разработчики приложений могли глобально применять универсальный набор параметров стилей элементов пользовательского интерфейса для приложений Android в целом или, альтернативно, для одного подclassа Activity.
Таким образом, существуют три основные системные темы ОС Android, которые вы можете указать в своем XML-файле манифеста Android при разработке приложений для версий версии 3.0 и более поздних версий
Я имею в виду библиотеку поддержки (APPCOMPAT) здесь: – Таким образом, три темы: 1. AppCompat Light Theme (Theme.AppCompat.Light)
- AppCompat Dark Theme (Theme.AppCompat),
- И гибрид между этими двумя, AppCompat Light Theme с Darker ActionBar. (Theme.AppCompat.Light.DarkActionBar)
AndroidManifest.xml и увидеть тег, тема Android называется: – android: theme = “@ style / AppTheme”
Откройте Styles.xml, и у нас есть базовая тема приложения, заявленная там: –
Нам нужно переопределить эти элементы родительской темы, чтобы создать стиль панели действий.
ActionBar с разным цветным фоном: –
Для этого нам нужно создать новый стиль MyActionBar (вы можете дать любое имя) с родительской ссылкой на @ style / Widget.AppCompat.Light.ActionBar.Solid.Inverse, который содержит характеристики стиля для элемента интерфейса Android ActionBar. Таким образом, определение
И это определение нам нужно указать в нашем AppTheme, указывая на переопределенное стили ActionBar как …
@ Стиль / MyActionBar
![]()
Изменение цвета текста заголовка (например, от черного до белого): –
Теперь, чтобы изменить цвет текста заголовка, нам нужно переопределить родительскую ссылку parent = “@ style / TextAppearance.AppCompat.Widget.ActionBar.Title”>
Таким образом, определение стиля будет
Мы будем ссылаться на это определение стиля внутри определения стиля MyActionBar , поскольку модификация TitleTextStyle является дочерним элементом элемента пользовательского интерфейса ОС ActionBar. Таким образом, окончательное определение элемента стиля MyActionBar будет
Итак, это финальный файл Styles.xml
Для дополнительных опций ActionBar. Стиль меню, перейдите по этой ссылке.
Только для Android 3.0 и выше
При поддержке Android 3.0 и выше вы можете определить фон панели действий следующим образом:
RES / значения / themes.xml
Для Android 2.1 и выше
При использовании библиотеки поддержки ваш XML-файл стиля может выглядеть следующим образом:
Затем примените свою тему для всего приложения или отдельных действий:
подробнее Documentaion
Вы можете изменить цвет панели действий следующим образом:
Это все, что вам нужно для изменения цвета панели действий.
Кроме того, если вы хотите изменить цвет строки состояния, просто добавьте строку:
- @color/green_dark_action_bar
Вот скриншот, сделанный с сайта разработчика android, чтобы сделать его более понятным, и вот ссылка, чтобы больше узнать о настройке цветовой палитры
Еще одна возможность сделать.
actionBar.setBackgroundDrawable (новый ColorDrawable (Color.parseColor (“# 0000ff”)));
Пользовательский цвет:
Пользовательский стиль:
Подробнее: Android ActionBar
Поскольку я использовал AppCompatActivity
выше, ответы не сработали для меня. Но нижеследующее решение сработало:
В res / styles.xml
PS: Я использовал colorPrimary
вместо android:colorPrimary
в style.xml добавить этот код
Используйте это – http://jgilfelt.github.io/android-actionbarstylegenerator/
Хороший инструмент для настройки панели действий с предварительным просмотром в течение нескольких минут.