自定義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切換圖徑過畫

以上,打完收功

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容