Search code examples
androidandroid-toolbarandroid-statusbar

Toolbar overlaps Translucent status bar


In an activity I have a Toolbar, and its layout code is:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.aminiam.moviekade.fragment.AllReviewFragment">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fitsSystemWindows="true"
        android:theme="@style/AppTheme">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />

    </android.support.design.widget.AppBarLayout>

    <android.support.v7.widget.RecyclerView
        android:id="@+id/recReview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/toolbar"/>

</LinearLayout>

I want to have transparent status bar in my app and when I add <item name="android:windowTranslucentStatus">true</item> to the activity theme, Toolbar will overlaps status bar.

values-v21 style.xml:

<resources>
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="android:windowBackground">@color/windowBackground</item>
</style>

<style name="TransparentStatusBar" parent="AppTheme">
    <item name="android:windowTranslucentStatus">true</item>
</style>

I tested all answers in Stackoverflow but they couldn't solve the problem.

enter image description here


Solution

  • add android:fitsSystemWindows="true"

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical"
            android:fitsSystemWindows="true"
            tools:context="com.aminiam.moviekade.fragment.AllReviewFragment">