Pelo que entendi, no início do estágio de visualização parecia não haver maneira de definir a elevação em XML apenas em CardView
s sem um hack em Java. Agora que o lançamento oficial foi lançado, há alguma maneira de fazer isso em XML sem escrever o código Java para definir a elevação?
Eu tentei card_view:cardElevation
sem efeito. Eu pensei que quando estava usando os emuladores do 5.0 estava tudo bem. Mas agora que estou usando a versão oficial no meu dispositivo real, todos os meus CardView
s desapareceram
Pré Lollipop, funciona muito bem.
Aqui está meu xml completo
<?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
fonte
fonte
Respostas:
Parece um problema de margem / preenchimento, tente definir o atributo cardUseCompatPadding como true. Por exemplo:
Explicação do documento Android:
fonte
Se você tem esta linha
na tag do aplicativo de manifesto, suas sombras não foram exibidas. tente remover esta linha
ou usar
Isso funcionou para mim! Eu espero que funcione para você também :)
fonte
Você tem que usar o
cardElevation
atributo.Bibliotecas Androidx:
Você pode usar o
MaterialCard
incluído na biblioteca oficial de componentes de materiais :E em seu layout:
Ou
CardView
nos pacotes androidx:E em seu layout:
Biblioteca de suporte ANTIGA :
fonte
Isso me resolveu adicionando
xmlns: card_view = "http://schemas.android.com/apk/res-auto"
por exemplo:
fonte
Estou adicionando um atributo app: cardElevation = "8dp" na visualização do cartão, então será como:
Espero que ajude
fonte