Estilo translúcido Android 4.4 y barras de navegación en Android 5.0
statusbar navigationbar (3)
Agregue la siguiente línea a su estilo:
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>
En Android 4.4 KitKat puede establecer las barras de Estado y Navegación transparentes con los elementos del tema android:windowTranslucentStatus
y android:windowTranslucentNavigation
, y luego debajo de las barras se extiende la ventana de la aplicación y se agrega un degradado. Sin embargo, en Android 5.0 Lollipop esto ha cambiado y ahora, en lugar del degradado, se agrega un color transparente sólido. Android 5.0 ofrece los nuevos elementos android:statusBarColor
y android:navigationBarColor
bajo el nuevo tema Material, pero cuando intentas establecer estos elementos en @android:color/transparent
la ventana de la aplicación no se extiende, y si usas android:windowTranslucentStatus
y android:windowTranslucentNavigation
then android:statusBarColor
y android:navigationBarColor
se ignoran.
¿Me falta algo descrito en http://developer.android.com/training/material/theme.html#StatusBar ?
Establezca android:windowTranslucentStatus
en false y configure android:statusBarColor
en @android:color/transparent
.
A continuación, agregue el código a continuación:
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
Si también desea que la barra de navegación sea translúcida, configure android:navigationBarColor
en @android:color/transparent
y combine la View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
también.
No experimenté en la barra de navegación, pero funcionará.
Para aclarar la respuesta de @ suckgamony a esta pregunta:
- Debajo de Lollipop y arriba , establecer
android:statusBarColor
oandroid:navigationBarColor
a@android:color/transparent
hará que la barra de estado o la barra de navegación (respectivamente) sean completamente transparentes, a menos que: -
android:windowTranslucentStatus
oandroid:windowTranslucentNavigation
se establece en true, en cuyo caso la barra de estado o la barra de navegación (respectivamente) se establece en el color transparente sólido que describe @AxeEffect (nuevamente, en Lollipop y arriba); -
android:statusBarColor
yandroid:navigationBarColor
solo se puede usar con la versión de Android 21 (Lollipop 5.0) o superior. Como se describe en la respuesta referida ,android:windowTranslucentStatus
oandroid:windowTranslucentNavigation
cuando se usa con Kitkat proporciona degradados transparentes en lugar de transparencia total.