自定义view之仿支付宝支付成功失败动画的实现原理

主要知识点

Path的常见方法

-moveTo() 该方法移动后续操作的起点坐标

-lineTo() 该方法是连接起始点与某一点(传的参数)形成一条线

-setLastPath() 该方法是设置Path最后的坐标

-close() 该方法是将起点坐标与终点坐标连接起来形成一个闭合的图形(如果始终点左边能连接的话)

-addRect() 该方法是绘制一个巨型

-addRoundRect() 该方法是绘制一个圆角矩形

-addOval() 该方法是绘制一个椭圆

-arcTo() 该方法是绘制一段圆弧

-addArc() 该方法是绘制一段圆弧

PathMeasure的常见方法

-setPath() 该方法将path与PathMeasure绑定起来

-getLength() 该方法用于获得path路径的长度

-getSegment() 该方法用于截取整个Path的片段

-nextContour() 该方法用于切换到下一个路径

实现原理步骤:

1.画path

2.通过pathMeasure的setPath,getSegment取显示部分的path,在onDraw方法里调用


canvas.drawPath

3.通过ValueAnimator来生成动画


mAnimator = ValueAnimator.ofFloat(0, 1);

mAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {

@Override

public void onAnimationUpdate(ValueAnimator animation) {

value = (float) animation.getAnimatedValue();

invalidate();

}

});

4.通过nextContour切换图径过画

以上,打完收功

你可能感兴趣的:(自定义view之仿支付宝支付成功失败动画的实现原理)