android - 在运行时替换 inflateMenu
问题描述
我有更改导航抽屉菜单的方法,我删除了 XML 文件 activity_main.xml 中的行
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
/>
所以我可以从代码中添加菜单资源
navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.inflateMenu(R.menu.activity_main_drawer);
navigationView.setNavigationItemSelectedListener(this);
但是当我需要用另一个资源替换菜单时,菜单将附加到第一个,但我需要删除最旧的请帮助我
解决方案
感谢#Mohsen navigationView.getMenu().clear() 它会做到的
推荐阅读
- python - 尝试从索引数据框中两行范围内的熊猫数据框中查找值
- git - Git 等价于 which/whence
- sql - WHERE DATE_COLUMN = '9999-12-31' 语句导致查询不返回任何结果
- mysql - 为什么简单的 mysql 查询耗时太长?
- javascript - 是否可以更改滑动滑块中的方向垂直滑块?我想同时拥有从上到下和从下到上的选项?
- python - 在 Python 中在冒号前的单词周围添加引号
- php - 如何使用 php 创建具有指定值的文件夹
- json - 从 cmd(命令提示符)运行“jsonlint test.json”,返回 ENOENT:没有这样的文件或目录,errno:-4058
- c# - 使用 C#.net 自动检测 LAN 上的应用程序
- java - 如何阻止演员连续捡起物体?