首页 > 解决方案 > Cardview 阴影在 api 18 上未正确显示

问题描述

我正在使用这样的cardview:

 <com.google.android.material.card.MaterialCardView
        android:id="@+id/togglebuysell"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_marginLeft="15dp"
        android:layout_marginTop="10dp"
        android:layout_marginRight="15dp"
        android:layout_marginBottom="10dp"
        app:cardCornerRadius="15dp"
        app:cardElevation="5dp">

运行 api > 21 的 设备上的结果在此处输入图像描述OK :但在运行 api 18 的设备上,结果是:

在此处输入图像描述 影子看起来很奇怪。有什么解决方案可以在所有 api 版本上解决这个问题吗?

标签: androidandroid-cardview

解决方案


CardView 在 Lollipop 之前添加了额外的填充以在平台上绘制阴影。

尝试添加app:cardUseCompatPadding="true"

https://developer.android.com/reference/android/support/v7/widget/CardView#setusecompatpadding


推荐阅读