androidandroid-design-library

Android Translucent status bar with Inverted icons


I was wondering how one could achieve Google Calendar's look.enter image description here

That is:

What I've tried:

Setting windowTranslucentStatus disables windowLightStatusBar:

<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:windowLightStatusBar">true</item>
<item name="android:windowTranslucentStatus">true</item>

Allows full transparency only(no colors in between), fitSystemWindows doesn't work properly:

<item name="android:windowLightStatusBar">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">#19000000</item>

window.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS)

Thanks.


Solution

  • Managed to find the solution:

    onCreate (in Kotlin):

    window.decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_STABLE or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
    window.statusBarColor = Color.parseColor("#1A000000")
    

    styles.xml:

    <item name="android:windowDrawsSystemBarBackgrounds">true</item>