如何以编程方式设置 Android 中 Navigation Drawer 菜单项的图标和标题之间的边距?
How to programmatically set the margin between icon and title of menu item of Navigation Drawer in Android?
我正在开发 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;
}
});
但是图标和标题之间的间距设置不正确。
这是我的问题的截图
正如您在屏幕截图中看到的,屏幕左侧与图标之间的间距与图标与标题之间的间距不相同。如何以编程方式设置菜单项的图标和标题之间的间距?
它们不应该相同。从 Navigation Drawer guidelines,你会注意到这个截图:
边距为 16dp
(在平板电脑上为 24dp
),而标题与 72dp
键线对齐。
由于 NavigationView
试图与 material 设计准则完全匹配,因此无法更改间距。
我正在开发 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;
}
});
但是图标和标题之间的间距设置不正确。
这是我的问题的截图
正如您在屏幕截图中看到的,屏幕左侧与图标之间的间距与图标与标题之间的间距不相同。如何以编程方式设置菜单项的图标和标题之间的间距?
它们不应该相同。从 Navigation Drawer guidelines,你会注意到这个截图:
边距为 16dp
(在平板电脑上为 24dp
),而标题与 72dp
键线对齐。
由于 NavigationView
试图与 material 设计准则完全匹配,因此无法更改间距。