在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>

更多相关文章

  1. 关于android中线性布局的layout_gravity属性
  2. android:exported 属性分析
  3. TextView/EditText各种各样的效果
  4. 安卓霓虹灯效果
  5. 后台动态添加布局文件、控件与动态设置属性2
  6. Android TextView 中文本横向滚动效果实现
  7. Android UI开发第八篇――ViewFlipper 左右滑动效果

随机推荐

  1. android layout属性介绍
  2. android访问服务器端上传及服务器端接收
  3. Android(安卓)上Camera分析
  4. Android的android:clipChildren属性
  5. Android开发视频教程大总结—23部视频教
  6. Android版块开发资源大汇总
  7. Android之layout属性介绍
  8. 玩转Android---UI篇---TextView(文本框)
  9. Andriod AOA协议通信总结
  10. Akita 一套Android快速开发库 发布1.2版