Android appbarlayout elevation aparece en la barra de estado
¿Cómo puedo deshacerme de la elevación en la barra de estado? Si configuro AppbarLayout la aplicación: elevación a 0dp la elevación ya no aparece en la barra de estado pero tampoco debajo de AppbarLayout.
¿Cómo obtengo la elevación bajo AppbarLayout?
- Utilizar Elevación y ondulación en ImageButton
- ¿Cómo tener un FAB con opción de no padding, pero aún así tener elevación?
- Material TabLayout elevación no funciona
- Android "elevación" que no muestra una sombra
- ¿Cómo puedo emular la elevación del botón (sombra) en la API de Android inferior a 21?
Aquí hay una captura de pantalla de lo que quiero decir: puush link , nota la sombra en la barra de estado 🙁
¡Gracias!
- Aplicación de la sombra con la elevación de Android
- La propiedad de elevación no funciona android
- ¿Qué está haciendo la elevación en Android L?
- "Android: elevation =" no funciona en los dispositivos pre-Lollipop con compilar API21
- Android: la elevación no funciona en L Vista previa
- Elevación + error de transparencia en Android Lollipop
Nuestra preocupación es la sombra de AppBarLayout
visible cuando la barra de estado es transparente. Tener una barra de estado opaca no es viable en todo momento. Esto sucede en Lollipop y sólo por el renderizado dinámico de sombras. En Marshmallow la sombra equivocada parece aún peor.
Mejor solución
Su diseño raíz debe tener android:fitsSystemWindows="true"
en todo momento, de lo contrario su interfaz de usuario no atraerá detrás de la barra de estado.
Ahora envuelva el AppBarLayout
dentro de otro CoordinatorLayout
que tiene android:fitsSystemWindows="false"
. Esto evitará que la sombra se desborde en la barra de estado
Otras soluciones (no recomendado)
En tu estilo, elimina el statusBarColor:
<item name="android:statusBarColor">@android:color/transparent</item>
Así que su tema sería:
<style name="AppTheme.NoActionBar"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> <item name="android:windowDrawsSystemBarBackgrounds">true</item> </style>
También puedes simplemente hacer app: elevation = "0dp" en appbarlayout, pero eso también elimina la sombra en la parte inferior.