主要知識點
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切換圖徑過畫
以上,打完收功