0

我有一个底部导航,我在其选择中检查所选项目,这可以防止它再次选择相同的项目。

因此,如果我在主屏幕上并再次单击主屏幕导航项,它不会执行任何操作。

我有一个案例,即使它已经被选中,我也需要使主页导航项可选择。

这是我在 onCreate 方法中运行的代码。

public void updateNavigationBarState() {
    int actionId = getNavigationMenuItemId();
    selectBottomNavigationBarItem(actionId);
}


void selectBottomNavigationBarItem(int itemId) {
    Menu menu = bottomNavigationView.getMenu();
    for (int i = 0, size = menu.size(); i < size; i++) {
        MenuItem item = menu.getItem(i);
        boolean shouldBeChecked = item.getItemId() == itemId;
        if (shouldBeChecked) {
            item.setChecked(true);
            item.setEnabled(false);
            break;
        }
    }
}

有没有办法让项目即使被选中也可以点击。

4

1 回答 1

0

使用setNavigationItemSelectedListener。像下面

navigationView.setNavigationItemSelectedListener(menuItem -> {
                switch (menuItem.getItemId()) {
                    case R.id.menuItemId:
                        // do your stuff here
                        return true;
                    default:
                        return true;
                }
            });
于 2019-11-14T11:18:35.827 回答