如何以编程方式设置Android中导航抽屉菜单项的图标和标题之间的边距?

时间:2016-05-05 18:56:45

标签: android android-menu android-navigation-drawer android-navigationview

我正在开发Android应用程序。在我的应用程序中,我使用导航抽屉和导航视图。但是我以编程方式为它们设置了菜单项。对于菜单项,我设置了图标和标题。但我遇到了问题。这是我无法设置我以编程方式添加到菜单的图标和标题之间的间距。

这是我以编程方式将项目添加到菜单

的方式
Menu menu = leftDrawer.getMenu();
        SubMenu subMenu = menu.addSubMenu(MAIN_MENU_ITEM_GROUP_ID, 99, 99, "Others");

        subMenu.add(MAIN_MENU_ITEM_GROUP_ID,96,96,"Monthly Leaderboard").setIcon(R.drawable.leaderboard_icon).setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                startActivity(new Intent(MainActivity.this, LeaderboardActivity.class));
                return false;
            }
        });

        subMenu.add(MAIN_MENU_ITEM_GROUP_ID,96,96,"Settings").setIcon(R.drawable.settings_icon).setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                startActivity(new Intent(MainActivity.this, SettingsActivity.class));
                return false;
            }
        });

但是图标和标题之间的间距没有正确设置。

这是我的问题的截图

enter image description here

正如您在屏幕截图中看到的,屏幕左侧和图标之间的间距以及图标和标题之间的间距不同。如何以编程方式设置菜单项的图标和标题之间的间距?

1 个答案:

答案 0 :(得分:3)

他们不应该是一样的。从Navigation Drawer guidelines开始,您会看到此屏幕截图:

Navigation Drawer specs

边距为16dp(平板电脑上为24dp),而标题与72dp keyline对齐。

由于NavigationView寻求与材料设计指南完全匹配,因此无法更改间距。