Android BottomNavigationBar Уникальный список оттенков значков для каждой вкладки? - PullRequest
0 голосов
/ 08 апреля 2019

Мне не удалось найти ни одного примера этого или действительно каких-либо вопросов, задающих то же самое, поэтому я пока не уверен, возможно ли это. У меня есть требование, чтобы каждый значок в моей нижней панели навигации был другого цвета. Итак 4 вкладки, 4 иконки, 4 цвета. В прошлом мне никогда не приходилось выходить за пределы iconTintList, чтобы изменять состояния, поскольку мои элементы имели выделенный и отмененный цвет.

Можно ли установить отдельный TintList для каждого элемента вкладки? Еще одна идея, которая у меня возникла при поиске, - установить для IconTintList значение null, а затем каждый из моих значков будет иметь свой цвет в самом значке. Я теряю контроль состояния, если это работает, но я мог бы заставить его менять значки самостоятельно, когда они получают или теряют фокус на правильный цветной значок. Это кажется немного хакерским.

РЕДАКТИРОВАТЬ: я могу подтвердить решение установки TintList на ноль и с использованием соответствующих цветных значков будет работать. Надеюсь, мне не нужно идти по этому пути, но похоже, что он удовлетворит мое требование, если это единственный путь.

Спасибо

Ответы [ 2 ]

1 голос
/ 08 апреля 2019

Вы можете использовать этот макет Как объединить BottomAppBar + FAB с BottomNavigationView (отметьте отмеченный ответ), после чего вы можете легко изменить каждый элемент согласно вашему требованию.

0 голосов
/ 09 апреля 2019

Вы можете создать colorStateList и попробовать:

bottomNavigation.getMenu().getItem(0).setIconTintList(iconsColorStates);

или

bottomNavigation.getMenu().findItem(R.id.item).setIconTintList(iconsColorStates);

и реплицируйте на каждый пункт меню ... Я думаю, что это будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...