android - 设置抽屉导航中的菜单与屏幕边缘之间的距离?

标签 android navigation-drawer

我想将距离“d”设置为特定值,如何实现?

enter image description here

是的,问题How to programatically set the margin between icon and title of menu item of Navigation Drawer in Android?和我的一样。我的代码如下:

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout 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"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:openDrawer="start">

    <include
        layout="@layout/app_bar_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view_main"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="false"
        app:headerLayout="@layout/nav_header"
        app:menu="@menu/activity_main_drawer" />
</android.support.v4.widget.DrawerLayout>

activity_main_drawer.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <group android:checkableBehavior="single">
        <item
            android:id="@+id/nav_product"
            android:icon="@drawable/ic_product"
            android:title="Products" />
        <item
            android:id="@+id/nav_statistic"
            android:icon="@drawable/ic_statistic"
            android:title="Statistic" />
        <item
            android:id="@+id/nav_settings"
            android:icon="@drawable/ic_settings"
            android:title="Settings" />
        <item
            android:id="@+id/nav_logout"
            android:icon="@drawable/ic_logout"
            android:title="Log out" />
    </group>

    <item android:title="Communicate">
        <menu>
            <item
                android:id="@+id/nav_share"
                android:icon="@drawable/ic_menu_share"
                android:title="Share" />
            <item
                android:id="@+id/nav_send"
                android:icon="@drawable/ic_menu_send"
                android:title="Send" />
        </menu>
    </item>

</menu>

最佳答案

这对我有用:)

在导航 View 中用于屏幕和图标菜单之间的填充:

app:itemHorizontalPadding="40dp"

对于菜单图标和文本之间的填充,请使用以下内容:

app:itemIconPadding="28dp"

完整代码:

<com.google.android.material.navigation.NavigationView
            android:id="@+id/nav_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="start"
            android:background="@android:color/background_light"
            android:fitsSystemWindows="true"
            app:headerLayout="@layout/nav_header_main"
            app:menu="@menu/activity_main_drawer"
            app:itemTextColor="?android:textColorPrimary"
            app:itemIconPadding="28dp"
            app:itemHorizontalPadding="40dp"  >

关于android - 设置抽屉导航中的菜单与屏幕边缘之间的距离?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39461534/

相关文章:

java - ArrayAdapter在构建抽屉导航中的作用是什么

java - 抽屉导航动画,drawerOpen被调用两次

java - recyclerview 项目显示抽屉导航 fragment 中显示空白屏幕

android - 如果您有 adb 访问权限,是否可以流式传输 Android 手机的屏幕?

android - 在 OPENSSL 中,在 SSL_Connect() 我得到 SSL_ERROR_WANT_READ

android - 如何将附加信息传递给 DeviceAdminReceiver?

android - 以编程方式更改设计支持导航 View 标题标题

android - 从左向右移动图像然后旋转动画

android - Universal-Image-Loader 不遵循 layout_weight

android - 如何停止在多个 Activity 中使用的抽屉导航 Activity 中选中项目的点击事件