主菜单显示在Android导航抽屉的子菜单下

主菜单显示在Android导航抽屉的子菜单下,android,android-menu,navigation-drawer,android-navigationview,Android,Android Menu,Navigation Drawer,Android Navigationview,我正在开发一个Android应用程序。在我的应用程序中,我使用导航抽屉和导航视图。我正在以编程方式将菜单项添加到抽屉中。但当我添加时,主菜单显示在子菜单下面 这就是我在创建活动时添加菜单的方式 private static final int CATEGORY_MENU_GROUP_ID = 20; private static final int MAIN_MENU_ITEM_GROUP_ID = 19; @Override protected void onCreate(Bundl

我正在开发一个Android应用程序。在我的应用程序中,我使用导航抽屉和导航视图。我正在以编程方式将菜单项添加到抽屉中。但当我添加时,主菜单显示在子菜单下面

这就是我在创建活动时添加菜单的方式

private static final int CATEGORY_MENU_GROUP_ID = 20;
private static final int MAIN_MENU_ITEM_GROUP_ID = 19;

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        updateAuthUI();
        addCategoryMenu();
}
这是我的updateAuthUI方法

public void updateAuthUI()
    {
        isLoggedIn = authStorage.getBoolean(getResources().getString(R.string.pref_is_logged_in),false);
        Menu menu = leftDrawer.getMenu();
        menu.removeGroup(MAIN_MENU_ITEM_GROUP_ID);
        menu.add(MAIN_MENU_ITEM_GROUP_ID,96,1,"Leaderboard").setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                startActivity(new Intent(MainActivity.this,LeaderboardActivity.class));
                return false;
            }
        });
        if(isLoggedIn)
        {
            fabBtn.setVisibility(View.VISIBLE);
            menu.add(MAIN_MENU_ITEM_GROUP_ID,getResources().getInteger(R.integer.logout_item_id),4,"Sign out").setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
                @Override
                public boolean onMenuItemClick(MenuItem item) {
                    logOut();
                    return false;
                }
            });
        }
        else{
            fabBtn.setVisibility(View.INVISIBLE);
            menu.add(MAIN_MENU_ITEM_GROUP_ID,getResources().getInteger(R.integer.register_item_id),2,"Create Account").setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
                @Override
                public boolean onMenuItemClick(MenuItem item) {
                    openRegisterActivity();
                    item.setChecked(true);
                    return true;
                }
            });
            menu.add(MAIN_MENU_ITEM_GROUP_ID,getResources().getInteger(R.integer.login_item_id),3,"Sign in").setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
                @Override
                public boolean onMenuItemClick(MenuItem item) {
                    openLoginActivity();
                    item.setChecked(true);
                    return true;
                }
            });
        }
}
这是addCategoryMenu方法

private void addCategoryMenu()
{
if(categoryItems!=null && categoryItems.size()>0)
        {
            Menu menu = leftDrawer.getMenu();
            SubMenu categorySubMenu = menu.addSubMenu("Categories");
            int menuStart = 6;
            for(int i = 0;i<categoryItems.size();i++)
            {

                categorySubMenu.add(CATEGORY_MENU_GROUP_ID,categoryItems.get(i).getId(),menuStart,categoryItems.get(i).getName()).setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
                    @Override
                    public boolean onMenuItemClick(MenuItem item) {
                        categoryItemSelected(item);
                        item.setChecked(true);
                        return true;
                    }
                });

                menuStart++;
            }
        }
}
private void addCategoryMenu()
{
if(categoryItems!=null&&categoryItems.size()>0)
{
Menu Menu=leftDrawer.getMenu();
子菜单类别子菜单=菜单。添加子菜单(“类别”);
int-menuStart=6;

对于(int i=0;i使用扩展列表视图通常主菜单显示在子菜单上方。对吗?那么我如何修复当前代码?子菜单的左边距左边距如何?我可以获取它的简单代码吗?