如何在代码中更改导航视图菜单中菜单项的顺序?
我在NavigationView中有一个菜单,它有7个菜单项,根据用户设置,其中一些菜单项应该是不可见的,其余的可见项应该以不同的顺序显示。这些项目已在XML菜单布局中定义。
我用谷歌搜索了很多,但没有任何与已经定义的菜单项相关的内容。大多数解决方案建议使用代码创建菜单项,并在创建菜单项时设置顺序。
以下是我的菜单项XML布局:
<group android:checkableBehavior="single">
<item
android:id="@+id/Home_menuitem"
android:title="Home" />
<item
android:id="@+id/Register_menuitem"
android:title="Register" />
<item
android:id="@+id/Login_menuitem"
android:title="Login" />
<item
android:id="@+id/language_menuitem"
android:title="Language" />
<item
android:id="@+id/ContactUs_menuitem"
android:title="Contact Us" />
<item
android:id="@+id/Likes_menuitem"
android:title="Likes" />
<item
android:id="@+id/Subscription_menuitem"
android:title="Subscription" />
<item
android:id="@+id/Logout_menuitem"
android:title="Logout" />
</group>
假设我想更改代码(而不是XML)中的顺序,使"Like_menuItem"显示在"Home_menuItem"之上
解决方案
我没有尝试,但您可能可以按照以下步骤操作。
首先获取菜单的引用
navigationView.getMenu()
以不同的顺序向其中添加或删除特定项目,以获得您的订单。
add(int groupId, int itemId, int order, CharSequence title)
removeItem(int id)
docs中的详细信息!
相关文章