简介

Cardview,是在 Android 5.0 (Lollipop) 中引入的是一个 UI 组件。 其继承于FrameLayout,其最主要的功能是作为父布局,为其包裹的子View 添加圆角效果或者阴影效果。

重要API

cardview 重要属性的含义
在这里插入图片描述

重要属性

cardCornerRadius

控制Cardview 圆角的半径(可分别控制4个角)

cardElevation

通过控制Cardview Z轴的高度调整外部四周的阴影大小

contentPadding

控制 Cardview 和其包裹的子View 四边的距离(可分别控制4条边间距)

cardBackgroundColor

控制填充contentPadding的背景颜色

适配低版本属性

cardMaxElevation

避免在阴影大小发生变化时移动视图,阴影大小限制

兼容性说明:

CardView 在 Lollipop (API level 21) 以下的设备中,他们的显示差异还是很大的:
CardView 进行阴影显示,会在外层新增填充的阴影图。
CardView 不会裁剪其子View的圆角。

局限:

1,CardView 在 >= API21 的版本上实现阴影效果也是通过 elevation 来实现的,最终的渲染是调用 native 方法进行的。在使用过程中发现这样一个问题,在屏幕不同位置的 View 阴影的方向是不一样的。它模拟的场景就是 光源的位置在屏幕中心的正上方,而阴影的表现由光源的位置决定,造成了阴影方向不一致。
2,默认的阴影颜色为黑色,且无法更改。

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐