android 自定义ripple
16lz
2021-01-23
在Android L使用了RippleDrawable类,用一个水波纹扩散效果在两种不同的状态间过渡。
使用Material Design样式的应用,button默认带有该效果。除了默认的效果外,系统还提供了另外两种效果,我们只把button的背景指定为:
- ?android:attr/selectableItemBackground
- ?android:attr/selectableItemBackgroundBorderless
任何view处于可点击状态,都可以使用RippleDrawable来达到水波纹特效。
我们也可以通过设置RippleDrawable的颜色属性来调节动画颜色,系统默认的颜色为主题的一个属性颜色:
- android:colorControlHighlight,所以我们可以通过修改该颜色值来统一修改默认的水波纹颜色。
- android:colorAccent可以修改checkbox的选中颜色
?android:attr/selectableItemBackground
<?xml version="1.0" encoding="utf-8"?><ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="?android:attr/colorControlHighlight"> <item android:id="@android:id/mask"> <color android:color="@android:color/white" /> item>ripple>
?android:attr/selectableItemBackgroundBorderless
<?xml version="1.0" encoding="utf-8"?><ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="?android:attr/colorControlHighlight">ripple>
自定义 限制扩散返回的ripple
drawable-v21 下新建一下ripple文件
<?xml version="1.0" encoding="utf-8"?><ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="@color/ripple_color"> <item android:id="@android:id/mask"> <color android:color="@color/ripple_color_mark" /> item>ripple>
自定义 不限制扩散返回的ripple
drawable-v21 下新建一下ripple文件
<?xml version="1.0" encoding="utf-8"?><ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="@color/ripple_color">ripple>
更多相关文章
- 关于android中线性布局的layout_gravity属性
- android:exported 属性分析
- TextView/EditText各种各样的效果
- 安卓霓虹灯效果
- 后台动态添加布局文件、控件与动态设置属性2
- Android TextView 中文本横向滚动效果实现
- Android UI开发第八篇――ViewFlipper 左右滑动效果