天天看点

Android特效专辑(十一)——仿水波纹流量球进度条控制器,实现高端大气的主流特效Android特效专辑(十一)——仿水波纹流球进度条控制器,实现高端大气的主流特效

今天看到一个效果挺不错的,就模仿了下来,加上了一些自己想要的效果,感觉还不错的样子,所以就分享出来了,话不多说,上图
Android特效专辑(十一)——仿水波纹流量球进度条控制器,实现高端大气的主流特效Android特效专辑(十一)——仿水波纹流球进度条控制器,实现高端大气的主流特效
这里主要是实现中心圆以及水波特效
我们运行一下
Android特效专辑(十一)——仿水波纹流量球进度条控制器,实现高端大气的主流特效Android特效专辑(十一)——仿水波纹流球进度条控制器,实现高端大气的主流特效
其实他是十分的空旷的,所以也值得我们去定制,我们在中间加个流量显示,再加个进度条
我们要实现这个,就要调用它的初始化以及start方法
别忘了activity销毁的时候把它回收哦
我们再运行一遍
Android特效专辑(十一)——仿水波纹流量球进度条控制器,实现高端大气的主流特效Android特效专辑(十一)——仿水波纹流球进度条控制器,实现高端大气的主流特效
但是我们要怎么让水波纹随着进度条一起上升下降尼?,这里我们就要用到我们刚才写的seekbar了,我们实现它的setonseekbarchangelistener来监听,这样我们就要复写他的三个方法,这里我们只要用到一个
这里,我们要这样算的,我们设置高度的单位是float,也就是从0-1f,而我们的进度是int progress,从0-100,我们就要用(float) progress / 100)并且强转来得到单位,好了,我们现在水波纹的高度就是随着我们的进度条一起变化了,我们再来运行一下
Android特效专辑(十一)——仿水波纹流量球进度条控制器,实现高端大气的主流特效Android特效专辑(十一)——仿水波纹流球进度条控制器,实现高端大气的主流特效
好的,这样的话,我们就只剩下一个了,就是让大小随着我们的进度条变化了,这里我们因为更新ui不能再主线程中操作,所以我们需要用到我们的老伙计handler了,但是用到handler还不够,我们的进度条数值也是在内部类里面,所以这里我们需要用到handler来传值了,这里我们用的是bundle,我们还是在onprogresschanged方法中操作了
消息发送过去了,我们就在前面写个handler去接收就是了
这里的计算公式尼,是当前的数值/100得到百分比再去*最大值。我们现在可以完整的运行一下了,其实和最上面运行的图片是一样的
Android特效专辑(十一)——仿水波纹流量球进度条控制器,实现高端大气的主流特效Android特效专辑(十一)——仿水波纹流球进度条控制器,实现高端大气的主流特效

继续阅读