Android CardView no funciona en Api 21

Estoy utilizando android CardView y funciona perfectamente por debajo de Api 21. Pero cuando lo uso en Api 21 es decir Lollipop los atributos xml como cardElevation , cornerRadius no funciona. ¿Qué estoy haciendo mal?

Este es mi diseño XML:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:card_view="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <!-- A CardView that contains a TextView --> <android.support.v7.widget.CardView android:id="@+id/card_view" android:layout_gravity="center" android:layout_width="match_parent" android:layout_height="match_parent" card_view:cardElevation="2dp" card_view:cardBackgroundColor="@color/white" card_view:cardCornerRadius="4dp"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:paddingTop="6dp" android:paddingBottom="8dp" android:paddingLeft="8dp" android:paddingRight="8dp" android:background="@color/white" android:layout_gravity="center_vertical" android:gravity="center_vertical" android:layout_alignBottom="@+id/live_image"> <TextView android:id="@+id/title_update" android:text="@string/msg_error" android:layout_width="match_parent" android:singleLine="true" android:ellipsize="end" android:textSize="18sp" android:background="@color/white" android:textColor="@color/black" android:layout_height="wrap_content" /> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal"> <TextView android:id="@+id/textView_time" android:layout_width="0dp" android:layout_height="wrap_content" android:text="@string/msg_error" android:layout_weight="0.75" android:singleLine="true" android:ellipsize="end" android:textAppearance="?android:attr/textAppearanceSmall" android:textColor="@color/black_translucent" /> <TextView android:id="@+id/textViewAlarm" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.25" android:visibility="gone" android:textAppearance="?android:attr/textAppearanceSmall" android:textColor="@color/black" android:textStyle="italic" /> </LinearLayout> </LinearLayout> </android.support.v7.widget.CardView> </LinearLayout> 

Yo tenía exactamente el mismo problema con CardView . Ajustar compatPadding a true corrigió el problema.

En tu diseño intenta agregar la siguiente línea a tu CardView

 card_view:cardUseCompatPadding="true" 

O si está inicializando en código, utilice

 cardView.setUseCompatPadding(true); 

Me encontré con el mismo comportamiento. Creo que la sombra se dibuja fuera del contenido. Por lo que necesita espacio entre el contenido de la vista y su frontera. Lo arreglé de la siguiente manera:

Añade márgenes a tu CardView

 <android.support.v7.widget.CardView android:id="@+id/card_view" android:layout_margin="15dp" ... > ... </android.support.v7.widget.CardView> 
  • Barra de herramientas de AppCompat: establece el tema de la barra de herramientas desde el tema superior
  • Configuración de la elevación de ActionBar en dispositivos anteriores a 5.0 con AppCompat
  • Cambiar la visibilidad Las vistas de AppBarLayout causan problemas de espaciado para Fragments cargados
  • Android - Creación de una lista de tarjetas
  • Barra de acción plana con Theme.Material
  • Android AppCompat 21 Elevación
  • ¿El menú de desbordamiento de Android está situado encima de barra de herramientas / barra de herramientas?
  • Biblioteca de soporte de diseño de materiales
  • ¿Por qué GoogleMaterial.Icon no tiene el icono de cierre de sesión en la biblioteca de Android?
  • Estilizar / colorear el botón SwitchCompat en Android Lollipop para el diseño del material
  • Android Material recolorado Subtexto de EditText
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.