效果图如下:
有时候我们需要绘画一些复杂的路径,就需要用到贝塞尔曲线
同时,我们希望展示绘画过程,就需要用到PathMeasure
下面就是一个简单的例子。
public class HeartView extends View {
public HeartView(Context context) {
super(context);
}
private Paint paint;
private ValueAnimator av;
private float mLength;
private PathMeasure pm;
private Path mPath;
public HeartView(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
init();
}
private void init() {
paint =new Paint(Paint.ANTI_ALIAS_FLAG);
paint.setColor(Color.BLUE);
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeWidth(5);
//-------------这里是绘制心形,大家可以自己画任何曲线---------------------------
mPath = new Path();
mPath.moveTo(396-50,313);
mPath.cubicTo(207-50,114, 339-50