Naszą troską jest o cieniu AppBarLayout
widoczne, gdy na pasku stanu jest przezroczysty mająca nieprzezroczysty!. pasek stanu nie jest opłacalne w każdym czasie. dzieje się tak na Lollipop & powyżej tylko z powodu dynamicznego renderowania cieni. na Marshmallow zły cień wygląda jeszcze gorzej.
Najlepsze rozwiązanie
Twój główny układ powinien zawsze mieć android:fitsSystemWindows="true"
, w przeciwnym razie twój interfejs nie będzie rysował za paskiem stanu.
Teraz owinąć AppBarLayout
wewnątrz innego CoordinatorLayout
, który ma android:fitsSystemWindows="false"
. Zapobiegnie to cień przepełnieniu na pasku stanu
Inne obejścia (nie zalecane)
W swoim stylu usunąć statusBarColor:
<item name="android:statusBarColor">@android:color/transparent</item>
Więc tematem będzie:
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
</style>
Możesz także po prostu zrobić app: elevation = "0dp" na appbarlayout, ale to również usuwa cień na dole.
Czy możesz opublikować motyw swojej działalności? – Jamal
Czy masz flagę stanu z rysowaniem behing? –
Nie jestem pewien co masz na myśli @NikolaDespotoski –