Dari apa yang saya pahami, di awal tahap pratinjau sepertinya tidak ada cara untuk mengatur elevasi di XML hanya pada CardView
s tanpa hack di Java. Sekarang rilis resminya sudah keluar, apakah ada cara untuk melakukan ini dalam XML tanpa menulis kode Java untuk mengatur ketinggian?
Saya telah mencoba card_view:cardElevation
untuk tidak berpengaruh. Saya sempat berpikir ketika saya menggunakan emulator untuk 5.0 semuanya baik-baik saja. Tapi sekarang saya menggunakan versi resmi pada perangkat saya yang sebenarnya, semua perangkat saya CardView
menghilang
Sebelum Lollipop, ini bekerja dengan baik.
Ini xml lengkap saya
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:orientation="horizontal"
android:layout_width="match_parent"
android:id="@+id/cv1"
card_view:cardElevation="4dp"
android:layout_margin="6dp"
card_view:cardCornerRadius="3dp"
android:layout_height="match_parent">
android
android-appcompat
android-cardview
android-elevation
TheLettuceMaster
sumber
sumber
Jawaban:
Sepertinya ada masalah margin / padding, coba setel atribut cardUseCompatPadding ke true. Misalnya:
Penjelasan dari dokumen Android:
sumber
Jika Anda memiliki baris ini
dalam tag aplikasi manifes, bayangan Anda tidak ditampilkan. coba hapus baris ini
atau gunakan
Ini berhasil untuk saya! Saya harap ini berhasil juga untuk Anda :)
sumber
Anda harus menggunakan
cardElevation
atribut.Perpustakaan Androidx:
Anda dapat menggunakan yang
MaterialCard
disertakan di pustaka Komponen Material resmi :Dan dalam tata letak Anda:
Atau
CardView
di paket androidx:Dan dalam tata letak Anda:
Pustaka dukungan LAMA :
sumber
Itu memecahkan saya dengan menambahkan
xmlns: card_view = "http://schemas.android.com/apk/res-auto"
sebagai contoh:
sumber
saya menambahkan atribut app: cardElevation = "8dp" pada tampilan kartu, jadi akan seperti ini:
Semoga bisa membantu
sumber