Цвет выбранной вкладки в нижней навигации
Я добавляю проект BottomNavigationView
в проект, и я хотел бы иметь другой цвет текста (и цвет значка) для выбранной вкладки (чтобы добиться эффекта неактивных вкладок). Использование другого цвета с android:state_selected="true"
в файле ресурсов селектора цветов, похоже, не работает. Я также попытался иметь дополнительные записи элементов с android:state_focused="true"
или android:state_enabled="true"
, к сожалению, никакого эффекта. Также попробовал установить для атрибута state_selected
значение false (явно) для стандартного (не выбранного) цвета, без везения.
Вот как я добавляю представление в свой макет:
Вот мой селектор цвета ( bnv_tab_item_foreground.xml
):
- Панель c # для рисования графики и прокрутки
- В каком порядке панели наиболее эффективны с точки зрения времени и производительности?
- self.title устанавливает заголовок navigationController и tabBarItem? Зачем?
- Как скрыть строку состояния iOS
- Android: как заголовок центра в ToolBar
И мой ресурс меню ( bottom_nav_bar_menu.xml
):
Буду признателен за любую помощь.
- Контекстные стили Actionbar
- Создание SearchView, который выглядит как руководство по разработке материалов
- Избегайте панели в autoHide в расширении Firefox
- Изменение цвета фона отдельных элементов меню навигации
- Как установить текст панели инструментов и цвет стрелки назад
- Чат клиента смайликов окно JAVA
- Добавление вертикальной полосы прокрутки в AlertDialog в Android?
- c: forEach внутри перьев (например, p: panelgrid) внутри ui: repeat
При создании selector
всегда сохраняйте состояние по умолчанию в конце, иначе будет использоваться только состояние по умолчанию. Вам необходимо изменить порядок элементов в селекторе как:
И состояние, которое будет использоваться с BottomNavigationBar
– state_checked
не state_selected
.
1. Внутри res создайте папку с цветом имени (например, с возможностью рисования)
2. Щелкните правой кнопкой мыши папку цветов. Выберите new-> color resource file-> создайте файл color.xml (bnv_tab_item_foreground) (Рисунок 1: Структура файла)
3. Скопируйте и вставьте bnv_tab_item_foreground
bnv_tab_item_foreground:
Рисунок 1: Структура файла:
Попробуйте использовать android:state_enabled
а не android:state_selected
для атрибутов элемента селектора.
BottomNavigationView
использует colorPrimary из темы, примененной для выбранной вкладки. Таким образом, вы можете создать стиль с предпочтительным основным цветом и задать его как тему для вашего BottomNavigationView
в файле макета xml.
styles.xml :
your_layout.xml :