android - 更改底部导航的图标位置
问题描述
通过按钮操作,我从另一个片段中更改了我选择的片段。但是,当我更改片段时,底部导航图标不会更改。选定的图标仍然显示第一个片段的图标。
ContactFragment contactFragment = new ContactFragment();
FragmentManager manager = getFragmentManager();
manager.beginTransaction()
.replace(R.id.fragment_container,contactFragment,contactFragment.getTag())
.commit();
显示的图像是联系人片段,但图标保留在设置部分。如何更改图标?请帮忙。
解决方案
你需要在onclick上重置图标,然后在switch case上你只需要设置你需要改变的那个,所以只有选中的时候图标才会改变。
Menu menu = bottomNavigationView.getMenu();
menu.findItem(R.id.action_favorites).setIcon(favDrawable);
switch (item.getItemId()) {
case R.id.setting:
item.setIcon(favDrawableSelected);
case R.id.contact:
case R.id.dupicated:
}
推荐阅读
- python - appium webdriver - 无法理解的错误
- python - Flask 重定向不起作用,没有错误,并且 db 没有更新
- javascript - 布尔数据似乎在 vue 3 中的 vue 反应中表现得很奇怪
- javascript - d3.js 将链接线向右移动
- azure-iot-hub - 如何在二头肌中部署 Azure IoT Hub 存储帐户归档?
- r - 在两个不同的向量上匹配相同的字符串
- tcp - 如何强制终止 Ejabberd 会话
- php - 如果结果集中的值与当前登录的用户不匹配,则有条件地使用备用值
- amazon-web-services - 如何从 EKS Monitoring 中账户 A 中的 node-exporter pod 中提取账户 B 中的 Prometheus pod 的日志?
- listview - FDQuery.Refresh 在单独的线程中同时 LiveBindings AutoActive := true