Свойство Android elevation не работает

С момента обновления до SDK 21 я пытался использовать свойство elevation, но оно никогда не работает.

Я хочу поднять рамку над другими, поэтому я устанавливаю следующее

android:elevation="4dp"

но нет никаких признаков тени. Я пробовал кнопки и framelayouts, но не получил никакой высоты

Итак, вот полный тег

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:id="@+id/panel_card"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#ffffff"
    android:elevation="4dp"
    >

я пропустил что-то еще, что мне нужно добавить

3 ответов


по данным этой Z = Высота + TranslationZ

Так что попробуйте это:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:card_view="http://schemas.android.com/apk/res-auto"
  android:id="@+id/panel_card"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:background="#ffffff"
  android:elevation="4dp"
  android:translationZ="4dp">

убедитесь, что фон для контейнера с FrameLayout не является прозрачным.


@Tinashe ответ правильный, но вместо использования

android:elevation="4dp"

использование:

card_view:elevation="4dp"