Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How I can remove the unnecessary top padding of the Navigation view?

There's an unnecessary top padding between the header and the first item shown in this picture.

enter image description here

How it can be removed?

you can find the source code here: https://github.com/chrisbanes/cheesesquare

like image 710
Ahmed Talaat Avatar asked Jun 01 '15 22:06

Ahmed Talaat


Video Answer


2 Answers

You can override predefined dimensions at your dimens.xml as;

<dimen name="design_navigation_padding_top_default" tools:override="true">0dp</dimen> <dimen name="design_navigation_separator_vertical_padding" tools:override="true">0dp</dimen> <dimen name="design_navigation_padding_bottom" tools:override="true">0dp</dimen> 

Other possible values are here: https://github.com/android/platform_frameworks_support/blob/master/design/res/values/dimens.xml

like image 88
Uğur Tılıkoğlu Avatar answered Sep 30 '22 13:09

Uğur Tılıkoğlu


You should read the Ian's answer. The NavigationView follows the Material guidelines and you should not break these specs.

However, currently, you can override this value in your project.

Just add to your dimens.xml:

<dimen name="design_navigation_separator_vertical_padding">0dp</dimen> 

Warning:

  • in the future the Android Team can change this value!
  • the same value is applied to each separator in the list

The NavigationView uses a LinearLayout as header view. You can see this layout in the source code:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"       android:layout_width="match_parent"       android:layout_height="wrap_content"       android:orientation="vertical"       android:paddingBottom="@dimen/design_navigation_separator_vertical_padding" /> 
like image 36
Gabriele Mariotti Avatar answered Sep 30 '22 15:09

Gabriele Mariotti