我正在使用android.support.v7.widget.CardView
库并面临一些问题。
在这里,我只使用一些余量来堆叠3 CardViews
。在Android L上运行它不会看到/绘制前2张牌的顶部阴影。
这是API级别16绘制卡片。
是否有可能始终绘制顶部阴影?
感谢。
编辑:xml代码
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="16dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="@dimen/card_view_corner_radius"
app:cardUseCompatPadding="true" />
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="16dp"
android:layout_marginLeft="4dp"
android:layout_marginRight="4dp"
android:layout_marginTop="4dp"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="@dimen/card_view_corner_radius"
app:cardUseCompatPadding="true" />
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="@dimen/card_view_corner_radius"
app:cardPreventCornerOverlap="true"
app:cardUseCompatPadding="true">
答案 0 :(得分:1)
根据我的研究,我相信GPU绘图更新以及高程会导致这种情况。由于卡片在相同的高度水平上具有相同的背景,因此平台将它们混合在一起。这就是为什么旧版本绘制一些边框,因为它不支持高程。
我的修复是为底部卡添加0dp高程,然后为中间添加1dp,顶部卡保持默认高度为2dp。现在可以看到轻微的边框。
答案 1 :(得分:0)
试试这个:
<android.support.v7.widget.CardView xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
card_view:cardBackgroundColor="@color/white"
card_view:cardCornerRadius="@dimen/card_view_corner_radius"
card_view:cardElevation="4dp" />
也许cardElevation
可以做到。