Android自定义View——刮刮卡效果

想要红包的实现效果的可以关注我的博客,仿饿了么红包

  • 下层图片:我们的红包的图片
  • 上层图片:有两部分
    • 一部分是灰色背景
    • 一部分是拥有透明度为0,并且模式为交集的画笔
  • 使用滑动监听,滑动时,用透明度为0的画笔画出透明和上层图片灰色的交集,交集即是透明的背景
  • 监听我们滑动的距离是否达到标准,达到标准后,使用子线程1s后自动展开剩余的灰色
  • 初始化画笔
  • 初始化顶层图片和底层图片
  • 监听滑动事件,判断是否滑完
  • 使用onDraw()画出我们的上层图片和底层图片

1、初始化画笔

画笔设置XferMode,DST_IN模式是交集模式,由于图片底层是灰色,上层是我们drawPath出来的透明度为0的路径,所以取交集,即透明的路径,达到涂刮的效果

这两个属性可使画笔四个角变为圆角

2、初始化底层图片和顶层图片

为顶层图片加上画布,并画上灰色

3、监听滑动事件,判断是否滑完

当手指松开时,判断是否滑完,以每一次左右滑累加得到的sumX和图片的宽度4倍比较,雅思是什么即是用手指左右滑动两个来回,并通过1秒延迟,让子线程重绘,涂刮剩余的灰色

记得在监听最后面重置LastY

4、ondraw方法,只要判断是否滑完了,滑完了就不画上层图片

布局文件中使用

整个类的源码

posted @ 2018-09-10 11:05  王凤霞  阅读(280)  评论(0编辑  收藏  举报
友情链接:回力 | 中老年高档女装 | 武汉雅思 | 武汉托福 | 武汉sat培训