1、使用Paint、ShapeDrawable画基本图形
说明:
①重写onDraw(Canvas canvas)方法
public class SecondAnimationView extends View {
private static final int RED = 0xFFFF0000;
private static final int BLUE = 0xff8080FF;
private static final int YELLOW = 0xffFFFF00;
public SecondAnimationView(Context context) {
super(context);
ValueAnimator colorAnim = ObjectAnimator.ofInt(this,
"backgroundColor", RED, YELLOW);
colorAnim.setDuration(3000);
colorAnim.setEvaluator(new ArgbEvaluator());
colorAnim.setRepeatCount(ValueAnimator.INFINITE);
colorAnim.setRepeatMode(ValueAnimator.REVERSE);
colorAnim.start();
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
/**
方法一
*/
// 定义画笔1
Paint paint = new Paint();
//定义矩形为空心
paint.setStyle(Paint.Style.STROKE);
// 消除锯齿
paint.setAntiAlias(true);
// 设置画笔的颜色
paint.setColor(Color.RED);
// 设置paint的外框宽度
paint.setStrokeWidth(2);
//绘制正方形
canvas.drawRect(10,80,70,140, paint);
//绘制矩形
canvas.drawRect(10,150,70,190, paint);
/**
* 方法二
*/
//得到矩形对象
RectShape rectShape = new RectShape();
//设置宽高
rectShape.resize(50f, 50f);
//得到Drawable对象
ShapeDrawable shapeDrawable = new ShapeDrawable(rectShape);
//设置位置
canvas.translate(400,450);
//画笔颜色
shapeDrawable.getPaint().setColor(Color.CYAN );
shapeDrawable.draw(canvas);
}
}