主菜单显示在Android导航抽屉的子菜单下
我正在开发一个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
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使用扩展列表视图通常主菜单显示在子菜单上方。对吗?那么我如何修复当前代码?子菜单的左边距左边距如何?我可以获取它的简单代码吗?