android cardview,安卓 CardView 妙用

安卓 CardView 可以实现圆角、阴影、涟漪效果。

CardView 认不到?

在 app 的 gradle 文件的 dependencies 节添加:'implementation 'com.android.support:cardview-v7:26.1.0'。

当然,实际可能不是这个版本。

圆角(圆形)图片

ImageView 不支持圆角,更别说圆形了,利用 CardView 解决吧。

android:layout_width="100dp"

android:layout_height="100dp"

app:cardCornerRadius="50dp">

android:layout_width="100dp"

android:layout_height="100dp"

android:src="@drawable/cftea"/>

这样图片也圆角了(我们这里实际是圆形),而且被砍掉的四个角,是透明的,不影响背景呈现。

43bee9ae33d2d94eed7aca2f1dfc0afa.png

圆角(圆形)图片就轻松实现了。

不过,在安卓 5.0 以下(不含)还是比较麻烦,因为它不会剪切内容,它会增加 padding 以保证内层元素完全不在切割范围内。就是下面这个样子,形成一个外接圆。

f5fdcd4c05c788bd561802d06e295d5f.png

如果我们设置

app:cardPreventCornerOverlap="false",它倒是不增加 padding 了,但它仍然不切割内容,如下图:

062e1bac81a89c2897055f5ab223c7f0.png

布局还有点乱了,这操蛋的。不过好消息是,我查了一下,< 5.0 版本的安卓不足 20%,如果不是大型应用,可以忽略了,使用这种老手机的,也许并不是我们的客户,也许正是对面的安卓测试员。

阴影

前面不是做了圆角图片么?我们可以做一点阴影,这样看起更有立体感。app:cardElevation="10dp"

涟漪效果

所说是设置如下属性,然后点击的时候,点击处就会辐射一个淡淡的圆形黑影,以显示点击的动态效果,不过我没试过。android:foreground="?android:attr/selectableItemBackground"

就这点?

还常常用来实现菜单、实现对话框(比如修改密码对话框)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值