我一直无法找到任何示例,也无法找到任何问题询问同一件事,因此我不确定是否可能。我要求底部导航栏中的每个图标都必须使用不同的颜色。因此有4个标签,4个图标,4种颜色。过去,我从未需要超出iconTintList来修改状态,因为我的项目共享选择的颜色和取消选择的颜色。
是否可以在每个选项卡项上设置单独的TintList?我从谷歌搜索到的另一个想法是将IconTintList设置为null,然后让我的每个图标在图标本身中都有其颜色。如果可以的话,我会失去状态控制,但是当它们将焦点移到正确的彩色图标上时,我可以强迫它自己更改图标。不过,这似乎有些hacky。
编辑:我可以确认将TintList设置为null并使用适当的颜色图标的解决方案。希望我不必走这条路,但是,如果这是唯一的方法,它将看起来可以满足我的要求。
谢谢
答案 0 :(得分:1)
您可以使用此布局How to combine BottomAppBar + FAB with BottomNavigationView(选中标记的答案),然后可以根据需要轻松修改每个项目。
答案 1 :(得分:0)
您可以创建一个colorStateList,然后尝试:
bottomNavigation.getMenu().getItem(0).setIconTintList(iconsColorStates);
或:
bottomNavigation.getMenu().findItem(R.id.item).setIconTintList(iconsColorStates);
并复制到每个菜单项...我认为它将起作用。