Как установить общее проверяемое поведение во всех группах в NavigationView?

Я создал две группы с уникальными идентификаторами (мне нужен разделитель), и они обе имеютcheckableBehavior установлен вне замужем, Это позволяет одновременно проверять несколько элементов из разных групп, и это именно то, чего я пытаюсь избежать. Я хотел бы, чтобы один элемент был проверен максимум во всех группах.

Поскольку я не нашел способа сделать это в XML, я попытался реализовать простую логику вonNavigationItemSelected снять отметку с предыдущего пункта меню:

if (previousItem != null)
   previousItem.setChecked(false);
currentItem.setChecked(true);

ноsetChecked(false) метод никогда не работал для меня - пункт остается проверенным.

Вот мой пример кода:

menu_navigation.xml:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group
        android:id="@+id/nav_group_1"
        android:checkableBehavior="single">
    <item
            android:id="@+id/nav_feed"
            android:title="@string/feed"/>
    <item
            android:id="@+id/nav_people"
            android:title="@string/people"/>
</group>
<group
        android:id="@+id/nav_group_2"
        android:checkableBehavior="single">
    <item
            android:id="@+id/nav_settings"
            android:title="@string/settings"/>
    <item
            android:id="@+id/nav_help_feedback"
            android:title="@string/help_feedback"/>
    <item
            android:id="@+id/nav_logout"
            android:title="@string/logout"/>
</group>

NavigationItemSelectedListener:

 mUiNavigationView.setNavigationItemSelectedListener(
                new NavigationView.OnNavigationItemSelectedListener() {
                    @Override
                    public boolean onNavigationItemSelected(MenuItem menuItem) {
                        if (previousItem != null)
                           previousItem.setChecked(false);
                        currentItem.setChecked(true);
                        //...
                        changeCurrentFragment(...);
                        return true;
                    }
                });

Мне нужна подсказка! Благодарю.

Ответы на вопрос(6)

Ваш ответ на вопрос