Android水波纹点击效果
16lz
2022-01-05
Android API 21及以上新增了ripple
标签用来实现水波纹的效果。我们可以通过设置ripple
背景来实现一些View点击效果。
水波纹样图
1. 水波纹效果实现
1)系统效果
- 系统有界效果
在API 21以上使用,才有波纹效果;API 21以下使用只有变色效果,没有波纹效果
android:background="?android:attr/selectableItemBackground"
- 系统无界效果
在API 21以上才能使用,API 21以下会报错无法编译,最小版本要设置为minSdkVersion 21
android:background="?android:attr/selectableItemBackgroundBorderless"
2)自定义效果
在res
中新建一个drawable-v21
文件夹,在此文件夹下新建ripple_bg.xml
用于实现波纹效果。(仅限Android 5.0以上机型)
- 自定义有界效果
<?xml version="1.0" encoding="utf-8"?> -
- 自定义无界效果
<?xml version="1.0" encoding="utf-8"?>
- 自定义带图片效果
<?xml version="1.0" encoding="utf-8"?> -
在布局中使用:
2. 水波纹效果兼容
在API 21以下无法使用ripple
标签来实现波纹效果,为了兼容低版本机型不出错,我们需要做波纹效果适配。
1)系统效果(只有变色效果,没有波纹效果)
android:background="?android:attr/selectableItemBackground"
2)自定义效果(只有变色效果,没有波纹效果)
在drawable
文件下创建同名文件ripple_bg.xml
用于适配Android 5.0以下机型。
<?xml version="1.0" encoding="utf-8"?> -
-
在布局中使用:
更多相关文章
- Android使用Handler实时更新UI
- Android中的数据绑定框架DataBinding(对比AngularJS双向数据绑定
- Android(安卓)特殊界面效果之——透明界面
- 如何在Android中使用OpenCV
- android:layout_weight属性详解
- Android(安卓)使用Lottie的三个小技巧
- 箭头函数的基础使用
- NPM 和webpack 的基础使用
- Python list sort方法的具体使用