No se muestra la elevación de Android de View en CardView

Tengo un RelativeLayout dentro de un CardView que quiero elevar en Android Lollipop, pero la elevación no se muestra (la sombra no se muestra):

introduzca la descripción de la imagen aquí

Mi archivo de diseño:

<?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android.support.v7.cardview="http://schemas.android.com/apk/res-auto" style="@style/CardViewStyle" android:layout_width="match_parent" android:layout_height="wrap_content" android:elevation="5dp" android:orientation="horizontal" android.support.v7.cardview:cardElevation="5dp"> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/list_selector" android:paddingBottom="5dp"> <ImageView android:id="@+id/article_thumb" android:layout_width="match_parent" android:layout_height="150dp" android:layout_alignParentTop="true" android:contentDescription="@string/app_name" android:scaleType="centerCrop" /> <TextView android:id="@+id/article_title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/article_thumb" android:layout_marginEnd="10dp" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_marginStart="10dp" android:ellipsize="middle" android:linksClickable="false" android:longClickable="false" android:text="@string/title" android:textAppearance="@style/TextAppearance.AppCompat.Title" android:textColor="@color/black" /> <TextView android:id="@+id/article_date" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/article_title" android:layout_alignStart="@+id/article_title" android:layout_below="@+id/article_title" android:layout_marginTop="10dp" android:text="@string/date" android:textAppearance="@style/TextAppearance.AppCompat.Light.Widget.PopupMenu.Small" android:textColor="@color/gray" /> <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignEnd="@+id/article_title" android:layout_alignRight="@+id/article_title" android:layout_below="@+id/article_title" android:layout_marginTop="10dp" android:elevation="30dp" android:translationZ="30dp"> <ImageView android:id="@+id/redbubble" android:layout_width="25dp" android:layout_height="25dp" android:layout_gravity="center" android:contentDescription="@string/app_name" android:scaleType="centerCrop" android:src="@drawable/redbubble" /> <TextView android:id="@+id/article_comment_bubble" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:textAppearance="@style/TextAppearance.AppCompat.Small" android:textColor="@color/white" /> </RelativeLayout> </RelativeLayout> 

Así que dentro de este diseño he añadido estas dos líneas al RelativeLayout para hacer la elevación:

 android:elevation="30dp" android:translationZ="30dp" 

Alguien una idea de por qué no se muestra? Por el momento lo pruebo con un Emulador usando la API 21 de Android (Lollipop).

En el diseño raíz en el xml que necesita

 xmlns:card_view="http://schemas.android.com/apk/res-auto" 

a continuación se muestra el código de un cardview

 card_view:cardElevation="5dp" 

La sombra no se muestra porque se dibujan fuera de los límites de RelativeLayout y la vista se sujeta a su límite.

Agregue android:clipChildren="false" al padre de su RelativeLayout o añada una pequeña cantidad de relleno a su vista y defina android:clipToPadding="false"

Debe añadir la propiedad android: elevation al redbubble imageview. Para ver la Sombra de un elemento tienes que añadir android: elevación a esa vista.

Le sugeriría que cambie su imagen de redbubble a la siguiente:

  <ImageView android:id="@+id/redbubble" android:layout_width="25dp" android:layout_height="25dp" android:layout_gravity="center" android:contentDescription="@string/app_name" android:scaleType="centerCrop" android:elevation="2dp" android:src="@drawable/redbubble" /> 

Noté que el mismo problema y la elevación no se muestra porque la línea:

android: layout_below = "@ + id / …."

Generalmente, es porque la sombra se dibuja fuera de los límites visibles.

retirar

 android:hardwareAccelerated="false" from manifest 
  • SetLayoutManager NullPointException en RecyclerView
  • Android 5: botón debajo de la barra de softnavigation (herencia de Showcaseview)
  • Cambiar el color de texto del título de ActionBar usando el tema Light.DarkActionBar en AppCompat 21
  • Cajón de navegación con borde curvo en Android
  • Accidente de transición de elemento compartido para dispositivos Lollipop
  • Cómo hacer que un spinner material de diseño surgen de un CardView
  • Android Material Design Datepicker con AppCompat
  • Centro de la pestaña activa dentro de TabLayout
  • Agregar botón como "Nuevo correo" de la aplicación de Gmail
  • Cómo utilizar android: Theme.Material (tema material) en styles.xml android?
  • ¿Cómo alinear widget.TextInputLayout con la vista de MaterialSpinner?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.