Search code examples
androidandroid-constraintlayoutdrawerlayout

Constraint layout Overlapping Toolbar


im having an issue with layout. I am trying to get the constraint layout to be placed underneath the toolbar. However, it decides it wants to overlap the toolbar. I have tried using app:layout_behavior="@string/appbar_scrolling_view_behavior" with no luck.

The toolbar is creating in another xml file and called in using include.

Activity below

<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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/drawer_layout"
    android:fitsSystemWindows="true"
    tools:context="XXXXXX"
    app:layout_behavior="@string/appbar_scrolling_view_behavior">

<include
    android:id="@+id/test1234"
    layout="@layout/app_bar_home"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>

<android.support.design.widget.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"
    app:menu="@menu/drawer_menu" />

<android.support.constraint.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layout_constraintTop_toBottomOf="@id/test1234">

**Bunch of constraints here etc**

**Bunch of buttons here**

</android.support.constraint.ConstraintLayout>


</android.support.v4.widget.DrawerLayout>

Here is an image of what it looks like

What it should look like

Edit

It is fine when shown in the design view of the android studio. However when opened on a phone or emulator it is still broken.

App still looks like the second image when emulated.

With the fixes below


Solution

  • I faced the same issue then i cracked it with this. in your constraint layout, write this

         android:layout_marginTop="?attr/actionBarSize"