How to uncheck checked items in Navigation View?

前端 未结 12 1411
夕颜
夕颜 2020-12-15 15:48

I know it\'s possible to highlight a navigation view item by calling setCheckedItem() or return true value in onNavigationItemSelected to display t

12条回答
  •  太阳男子
    2020-12-15 16:47

    To uncheck all MenuItems including SubMenu items you have to use recursion -

        private void unCheckAllMenuItems(@NonNull final Menu menu) {
            int size = menu.size();
            for (int i = 0; i < size; i++) {
                final MenuItem item = menu.getItem(i);
                if(item.hasSubMenu()) {
                    // Un check sub menu items
                    unCheckAllMenuItems(item.getSubMenu());
                } else {
                    item.setChecked(false);
                }
            }
        }
    

    Call above method for unchecking all items, like below -

    unCheckAllMenuItems(navigationView.getMenu());
    

提交回复
热议问题