拖动进度条的时候,文字上有一坨类似光照的东西,闪闪的飘过去,类似 iOS 系统的 “滑动来解锁”, 通过这篇文章介绍的 Shader ,可以很轻松的实现这种效果~
一、Shader 是什么
Shader 是辅助 Paint 的一个工具,它本身不具有绘制任何内容的能力。给 Paint 上设置了一个 Shader 以后, 用这个 Paint 绘制的任何东西,显示出来的
颜色 都是由 Shader 中获取的,绘出的
图形 不受影响。 (绘制 Bitmap 不受 Shader 影响)
注: 对自定义 VIew 和绘制这部分还不清楚的童鞋, 可以看一下官网的这篇教程
http://developer.android.com/training/custom-views/index.html 。
二、Shader 的作用
Shader 就好像一大块完整的图像,这个图像可以是渐变的颜色, 也可以是一个 Bitmap 。
这块图像上原先盖了一个板子, 把Shader 挡住,当你用设置了 Shader 的 Paint 绘制内容的时候,就像是在这个板子上挖洞, 你可以挖方的,圆的,扇形的,或者文字形状的都可以, 挖了洞以后, 就能透过这些洞看到你设置的 Shader 上的内容了。
比如下面的这些例子
LinearGradient
RadialGradient