我正在使用android.support.design.widget.NavigationView
。在此视图的生命周期中,菜单项会动态更改(删除,重命名和添加)。但是,这些更改不会直接显示,而是仅在视图被销毁并再次创建后(例如,在方向更改时)。
是否有办法强制它更新菜单?
答案 0 :(得分:1)
向NavigationView添加动态菜单目前是Design Support库的错误。而且我看到有人已将其报告给android bug源跟踪。所以等到bug修好了。但如果你想要临时解决方案,你可以做到。首先添加动态菜单..
navView = (NavigationView) findViewById(R.id.navView);
Menu m = navView.getMenu();
SubMenu topChannelMenu = m.addSubMenu("Top Channels");
topChannelMenu.add("Foo");
topChannelMenu.add("Bar");
topChannelMenu.add("Baz");
添加菜单后,只需写下代码..
MenuItem mi = m.getItem(m.size()-1);
mi.setTitle(mi.getTitle());