【发布时间】:2019-03-14 21:25:58
【问题描述】:
我在我的应用中使用标准导航抽屉来显示两种菜单项:
高级常规项目,如仪表板、详细视图等。
每个用户帐户的特定屏幕。
第二组项目需要动态填充,即我无法在 XML 中指定这些。我正在努力获得第二组的头衔。
这是我当前的 menu.xml 文件
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="General">
<menu>
<group
android:id="@+id/main_group"
android:orderInCategory="1">
<item
android:id="@+id/nav_dashboard"
android:icon="@drawable/ic_dashboard"
android:title="@string/nav_dashboard"
android:checkable="true"
android:checked="true"/>
<item
android:id="@+id/nav_all"
android:icon="@drawable/ic_list"
android:title="@string/nav_all"
android:checkable="true" />
</group>
</menu>
</item>
<item android:title="Accounts">
<menu>
<group
android:id="@+id/accounts_group"
android:orderInCategory="2">
</group>
</menu>
</item>
</menu>
标题Accounts 在我的导航抽屉上不可见。但是,如果我不动态填充项目,而是在 XML 中放置一些随机项目,它是可见的。
这就是我填充菜单项的方式:
for (int index = 0; index < accountsList.size(); index++) {
MainActivityPresenter.AccountInfo accountInfo = accountsList.get(index);
menu.add(R.id.accounts_group, index + MENU_ITEM_ID, 1, accountInfo.name).setCheckable(true);
}
寻找提示。为什么我动态添加项目时项目标题Accounts 不显示?谢谢!
【问题讨论】: