Android自定义绘制:Shader - 模仿iOS滑动解锁

本文介绍了如何使用Android的Shader来模仿iOS的滑动解锁效果。通过Shader,可以创建一个类似光照的渐变效果,随着进度条的移动,Shader在文字上产生动态的视觉效果。详细讲解了Shader的原理、作用,以及如何通过LinearGradient、Matrix等实现自定义TextView的动画效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



     拖动进度条的时候,文字上有一坨类似光照的东西,闪闪的飘过去,类似 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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值