答案 0 :(得分:15)
将以下行添加到app\src\main\res\values\dimens.xml
文件中。无需添加新布局。
<dimen tools:override="true" name="design_navigation_icon_padding">5dp</dimen>
答案 1 :(得分:5)
我在xml中添加了一行:app:itemIconPadding =“ @ dimen / space24”,并且它起作用了
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="@android:color/white"
android:clipToPadding="false"
android:paddingBottom="@dimen/space48"
app:headerLayout="@layout/layout_nav_header"
app:insetForeground="@color/black"
**app:itemIconPadding="@dimen/space24"**
app:itemBackground="@drawable/background_selected_menu"
app:itemHorizontalPadding="@dimen/horizontal_padding_on_nav_drawer"
app:menu="@menu/drawer">
答案 2 :(得分:1)
您需要另外一种可以膨胀的布局。在布局中,您可以将边距设置为您想要的边距。 Inflater允许您将布局调整为视图。看看http://developer.android.com/reference/android/view/LayoutInflater.html 或这个 http://khajanpndey.blogspot.com.ng/2012/12/android-layoutinflater-tutorial.html
无论您使用哪种视图,请查看如何为视图充气。 希望这有帮助。
答案 3 :(得分:0)
如果更改dimens.xml文件,则将更改所有项目。我建议您像在Vadym的建议中一样,在NavigationView中进行本地更改。或者您可以像这样更改:
<com.google.android.material.navigation.NavigationView
app:itemIconPadding="4dp"
../>
这对我来说效果很好,您可以将padding的值更改为所需的任何值。