夕辞

Android CardView使用elevation设置阴影去掉边角背景解决办法 | 夕辞夕辞

Android CardView使用elevation设置阴影去掉边角背景解决办法

Android有各种方式去设置一个控件的阴影,比如layer-list等方式,其中有一种是使用CardView的elevation属性来设置阴影,同时又可以设置圆角的半径来达到圆角矩形的效果,不过设置完圆角后,会发现四个角有黑色的部分,显得很难看。

 

比如下面的代码:

<androidx.cardview.widget.CardView
	android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginRight="10dp"
    android:layout_weight="1"
    android:background="@color/white"
    android:elevation="3dp"
    android:translationZ="3dp"
    app:cardCornerRadius="10dp">
</androidx.cardview.widget.CardView

设置后效果如下:

角落里很难看,其实一行代码就能解决,增加属性如下:

app:cardUseCompatPadding="true"

增加后,我们再来看看效果:

是不是就正常了,很简单吧。

 

PS:示例中的CardView使用的是androidx包的,正常support包的也没问题,也有该属性。

2020年6月28日 / /
标签:  暂无标签
回到顶部