У меня есть такое меню навигации:
<com.google.android.material.navigation.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="@android:color/white"
android:fitsSystemWindows="true"
app:menu="@menu/activity_home_drawer" />
И я перетаскиваю все элементы скрытого режима в две группы. Я добавляю все предметы, потому что хочу иметь идентификатор для всех них. Затем я хочу очистить одну группу и динамически добавлять элементы и значок обновления с помощью некоторых событий, таких как изменение состояния входа пользователя.
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group
android:enabled="true"
android:id="@+id/navigation_group_lists"
android:checkableBehavior="single">
<group
android:enabled="true"
android:id="@+id/navigation_menu_tools"
android:checkableBehavior="single">
Проблема заключается в том, что после первого вызова операции создания создается Я не могу удалить любой предмет.
navigationMenu.removeGroup(R.id.navigation_group_lists)
Эта строка работает только один раз. Я также пытался navigationMenu.clear()
, и результат тот же. Я также отлаживаю код детали android. Кажется, найти правильный идентификатор и удалить элемент, но пользовательский интерфейс не обновляется.
Я хочу повторно отрендерить все элементы в этой группе. Я погуглил и обнаружил, что многим людям рекомендуется изменить только видимость. Но я не хочу этого из-за реализации. Я хочу очистить все и добавить новые снова. Я хочу, чтобы вы знали, что проблема не в части добавления, проблема в удалении части, потому что я пытаюсь просто удалить без добавления, и это не работает.