Android AppCompat 21 Elevación
¿Hay alguna forma de agregar elevación a una View
en los dispositivos pre-pirulí sin envolverlos en un CardView
?
- ¿Cómo puedo emular la elevación del botón (sombra) en la API de Android inferior a 21?
- Cómo deslizar las pestañas de la barra de herramientas mediante el diseño del material
- biblioteca de materiales de apoyo, no puede encontrar Cardview / Recycleview
- Android "elevación" que no muestra una sombra
- Cómo inflar android NavigationView con otro menú dinámicamente durante onClick?
- ¿Cómo aplicar setItemChecked (position, true) con RecyclerView en Android?
- Cambiar el relleno de TextView en TabLayout
- ¿Cómo cambiar la dirección de los iconos para los elementos del menú en un NavigationView?
- ¿Botón circular material en Android?
- ¿Cómo hacer clic en las vistas detrás de una barra de herramientas?
- Android nivel 21 compatibilidad hacia atrás? (Desde que salió la nueva actualización del SDK)
- Elementos compartidos de Android con Picasso
- Accidente de transición de elemento compartido para dispositivos Lollipop
ViewCompat.setElevation(View, int)
actualmente no crea calzos.
La única manera de simular la elevación ahora es aplicar una sombra pre-v21. Defina su estilo / diseño / dibujable en values
y values-v21
en values-v21
. Para los botones utilizo anulaciones de estilo. Para los diseños, por lo general voy para la anulación de referencia (use @null
para deshacerse de un drawable).
Esperemos que en el futuro una actualización de la biblioteca de soporte agregará shims.
Este hilo reddit realiza un seguimiento de dicha actualización.
Editar
La nueva biblioteca de diseño de soporte realmente crea calzos para el botón de acción flotante.
Este es un ejemplo de cómo agregar una sombra debajo de la Toolbar
de Toolbar
en los dispositivos pre-piruletas:
El diseño debe ser el siguiente:
<RelativeLayout android:id="@+id/toolbar_container" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" > <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:animateLayoutChanges="true" android:background="?attr/colorPrimary" android:minHeight="?attr/actionBarSize" app:theme="@style/ThemeOverlay.AppCompat.ActionBar" /> <View android:id="@+id/toolbar_shadow" android:layout_width="match_parent" android:layout_height="@dimen/toolbar_shadow" android:layout_below="@id/toolbar" android:background="@drawable/toolbar_dropshadow" /> </RelativeLayout>
Y la sombra es:
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <gradient android:angle="90" android:endColor="#88444444" android:startColor="@android:color/transparent" /> </shape>
Consigo el mismo efecto usando,
android:background="@android:drawable/dialog_holo_light_frame"
Mi salida probada:
Referencia – https://stackoverflow.com/a/25683148/3879847
Actualización: Si desea cambiar el color de este intento dibujable @Irfan respuesta
- Cambiar el color del círculo del botón de radio- Android
- ¿Cómo configurar el color / estilo personalizado de ActionBar?