画这个控件已经没什么难度了,这里主要是说,这个控件的动画较多,一开始是旋转,然后是聚合,然后是扩散。 所以我们这里采用在自定义控件中,写内部类来处理动画。


这里,构造方法中,开启了一个从0到360之间的变化。并且是一个无限循环的动画,每个节点都会重绘。
然后在内部类的onDraw中,画点:

就是一个简单的数学换算而以。
最后还有一个取消的方法:

这个类就写完了,调用当然就是在,自定义控件的onDraw里面调哇

逻辑就是,在rotationstat的构方中,会不断的调用重绘,这里就会不断调用 rotationstat的onDraw来绘制!
那第二个动画的原理就是一样的了,这里也贴一下代码。


第二个动画就是在第一个动画执行完了再执行嘛! 就是一个监听而以。
网友评论