以编程方式创建弹出菜单分隔符-Android



用程序创建弹出菜单分隔符-Android我在用程序创建的弹出菜单中添加分隔符时遇到问题。在xml中,我认为它是自动的,但当我搜索方法时,我似乎找不到类似popmenu.getMenu().addSeparator(); 的东西

这可能吗?

这就是我尝试的:

    int group_id = 0;
    int item_id = 1;
    int order = 1;
    PopupMenu popupMenu  = new PopupMenu(this , btn_add_product);
    popupMenu.getMenu().add( group_id , item_id , order , "Sample");
    popupMenu.getMenu().add("---------------------------------------");

我的回答不符合逻辑或不正确


我不知道如何编程

此处由~ID_GROUP~.xml---动态

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<group android:id="@+id/grp1" android:checkableBehavior="single" >
    <item
        android:id="@+id/navigation_item_1"
        android:checked="true"
        android:icon="@drawable/ic_home"
        android:title="@string/navigation_item_1" />
</group>
<group android:id="@+id/grp2" android:checkableBehavior="single" >
    <item
        android:id="@+id/navigation_item_2"
        android:icon="@drawable/ic_home"
        android:title="@string/navigation_item_2" />
</group>

~我用很少的修复程序如果这对你有帮助的话.设置启用错误

    // add(groupId, itemId, order, title);
    menu.add(0, 0, 0, "Option1").setShortcut('1', 'a');
    menu.add(0, 1, 1, "Option2").setShortcut('2', 'b');
    menu.add(0, 2, 2, "Option3").setShortcut('3', 'c');
    /**
     * If you're running your code on Android 3.0+, the icons in the menu are not shown by design.
     * menu.add(0, 3, 3, "").setEnabled(false).setIcon(R.drawable.icon_bookmark);
     */
    menu.add(0, 3, 3, "______________________________________").setEnabled(false);
    menu.add(1, 4, 4, "Option1-2").setShortcut('5', 'd');
    menu.add(1, 5, 5, "Option2-2").setShortcut('6', 'e');
    menu.add(1, 6, 6, "Option3-2").setShortcut('7', 'f');

这只是为了支持或提供帮助。

最新更新