消除标题栏和菜单布局之间导航抽屉中的间隙

时间:2019-12-16 13:24:32

标签: android kotlin

如何消除标题栏和菜单布局之间导航抽屉中的间隙?

我的activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.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" />

    <com.google.android.material.navigation.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_main"
        app:menu="@menu/activity_main_drawer"
        android:background="@color/colorBlue"
        app:itemBackground="@drawable/drawer_button_bg"
        app:itemIconTint="@drawable/drawer_button_text_color"
        app:itemTextColor="@drawable/drawer_button_text_color"
        app:itemTextAppearance="@style/NavigationText"
        />

</androidx.drawerlayout.widget.DrawerLayout>

这是app_bar_main.xml文件。我尚未对此文件进行任何更改或自定义。

<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout 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:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <com.google.android.material.appbar.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

        <androidx.appcompat.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </com.google.android.material.appbar.AppBarLayout>

    <include layout="@layout/content_main" />



</androidx.coordinatorlayout.widget.CoordinatorLayout>

在nav_header_main.xml中,我对其进行了修改,以修复某些文本和botton 1dp行。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="160dp"
    android:gravity="bottom"
    android:orientation="vertical"
    android:background="@color/colorBlue">

    <TextView
        android:id="@+id/textView2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fontFamily="@font/raleway_semibold"
        android:text="Use these services without logging in"
        android:textColor="@color/colorWhite"
        android:textSize="22sp"
        android:paddingLeft="16dp"
        android:paddingTop="36dp"
        android:paddingRight="16dp"
        android:paddingBottom="50dp" />

    <View
        android:layout_width="fill_parent"
        android:layout_height="1dp"
        android:background="@color/colorBlueLight"
        android:layout_gravity="bottom"/>

</LinearLayout>

这是我的conte_main.xml文件

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:showIn="@layout/app_bar_main">

    <fragment
        android:id="@+id/nav_host_fragment"
        android:name="androidx.navigation.fragment.NavHostFragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:defaultNavHost="true"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:navGraph="@navigation/mobile_navigation" />
</androidx.constraintlayout.widget.ConstraintLayout>

这是菜单/ activity_main_drawer

<?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_home"
            android:title="@string/menu_home" />

        <item
            android:id="@+id/nav_contact"
            android:title="@string/menu_contact" />
        <item
            android:id="@+id/nav_tandc"
            android:title="@string/menu_tandc" />
        <item
            android:id="@+id/nav_pandp"
            android:title="@string/menu_pandp" />
    </group>
</menu>

下面是我要去除的白色空白。

enter image description here

enter image description here

0 个答案:

没有答案