在不调用 onNavigationItemSelected 方法的情况下突出显示 BottomNavigationView 中的菜单项

Highlighting a menu item in BottomNavigationView without invoking onNavigationItemSelected method

我的 activity 中有一个 BottomNavigationViewonNavigationItemSelected 听众。

我有两个问题:

  1. setSelectedItemId方法是否调用了onNavigationItemSelected方法?文档说这个方法的行为就像菜单项被点击一样,我的观察是肯定的。

  2. 如果是,如何在不调用 onNavigationItemSelected 的情况下突出显示菜单项?

  1. 是,BottomNavigationView.setSelectedItemId(int itemId) 触发 onNavigationItemSelected(MenuItem item)

  2. 使用BottomNavigationView.getMenu().getItem(int index)BottomNavigationView.getMenu().findItem(int id),然后调用MenuItem.setChecked(boolean checked)高亮菜单项而不触发onNavigationItemSelected(MenuItem item)