android android-actionbar actionbarsherlock

android - Eliminar la sombra debajo de la barra de acciones



android-actionbar actionbarsherlock (10)

¿Cuál es el elemento de estilo para que desaparezca?

Para eliminar la sombra, agregue esto al tema de su aplicación:

<style name="MyAppTheme" parent="android:Theme.Holo.Light"> <item name="android:windowContentOverlay">@null</item> </style>

ACTUALIZACIÓN: como dijo @ Quinny898, en Android 5.0 esto ha cambiado, tienes que llamar a setElevation(0) en tu barra de acciones. Tenga en cuenta que si está utilizando la biblioteca de soporte, debe llamarlo de esa manera:

getSupportActionBar().setElevation(0);

Yo uso actionbarsherlock. El fragmento de código siguiente es responsable de cambiar su fondo por uno personalizado.

<style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.ActionBar"> <item name="background">@drawable/actionbar_bg</item> <item name="android:background">@drawable/actionbar_bg</item> <...> </style> <style name="Theme.MyApp" parent="@style/Theme.Sherlock.Light"> <item name="actionBarStyle">@style/Widget.Styled.ActionBar</item> <item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item> <..> </style>

Y funciona para actionbarsherlock (en las versiones debajo de honeycomb). Pero en ICS tengo una sombra debajo de la barra de acciones que no quiero. ¿Cuál es el elemento de estilo para que desaparezca?


Debes configurar la aplicación: elevetor = "0dp" en android.support.design.widget.AppBarLayout y luego funciona: D

<android.support.design.widget.AppBarLayout app:elevation="0dp"... > <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="@android:color/transparent" app:popupTheme="@style/AppTheme.PopupOverlay" > </android.support.v7.widget.Toolbar> </android.support.design.widget.AppBarLayout>


En Android 5.0 esto ha cambiado, tienes que llamar a setElevation (0) en tu barra de acciones. Tenga en cuenta que si está utilizando la biblioteca de soporte, debe llamarlo de esa manera:

getSupportActionBar().setElevation(0);

No se ve afectado por el elemento de estilo windowContentOverlay, por lo que no se requieren cambios en los estilos


Para Android 5.0, si desea configurarlo directamente en un estilo, use:

<item name="android:elevation">0dp</item>

y para el uso de compatibilidad de biblioteca de soporte:

<item name="elevation">0dp</item>

Ejemplo de estilo para un tema ligero de AppCompat:

<style name="Theme.MyApp.ActionBar" parent="style/Widget.AppCompat.Light.ActionBar.Solid.Inverse"> <!-- remove shadow below action bar --> <!-- <item name="android:elevation">0dp</item> --> <!-- Support library compatibility --> <item name="elevation">0dp</item> </style>

A continuación, aplique este estilo personalizado de barra de acciones al tema de la aplicación:

<style name="Theme.MyApp" parent="Theme.AppCompat.Light"> <item name="actionBarStyle">@style/Theme.MyApp.ActionBar</item> </style>

Para Android pre 5.0, agregue esto también al tema de su aplicación:

<!-- Remove shadow below action bar Android < 5.0 --> <item name="android:windowContentOverlay">@null</item>


Para aquellos que trabajan en fragmentos y desapareció después de establecer toolbar.getBackground().setAlpha(0); o cualquier desaparición, creo que tienes que llevar tu AppBarLayout al último en el xml, entonces su Fragmento luego AppBarLayout luego relativelayout / constraint / linear lo que uses.


Para los desarrolladores de Xamarin, usa: SupportActionBar.Elevation = 0; para AppCompatActivity o ActionBar.Elevation = 0; para actividades no compatibles


Si está trabajando con ActionBarSherlock

En tu tema agrega esto:

<style name="MyTheme" parent="Theme.Sherlock"> .... <item name="windowContentOverlay">@null</item> <item name="android:windowContentOverlay">@null</item> .... </style>


Tengo el mismo problema y he resuelto este problema con éxito. Todo lo que tiene que hacer es simplemente cambiar la elevación a 0 valor de punto flotante en la actividad en la que desea eliminar la elevación.

Si desea cambiarlo en una actividad llamada MyActivity.java debe obtener ActionBar .

Primero importe la clase ActionBar

import android.support.v7.app.ActionBar;

después de importar, debe inicializar una variable de la barra de acciones y establecer su elevación en 0.

private ActionBar toolbar; @Override protected void onCreate(Bundle savedInstanceState) { . . toolbar=getSupportActionBar(); toolbar.setElevation(0); . . }


agregar la app:elevation="0dp" en AppBarLayout para ocultar la sombra en la barra de la aplicación


app:elevation="0dp"

pero no

android:elevation="0dp"

trabajado para mí en Android L