自定义view画一个圆

新建一个类MyView继承View

public class MyView extends View{

    Paint paint;

    int downX;

    int downY;

    private void init(){
        paint = new Paint();
        //设置抗锯齿
        paint.setAntiAlias(true);
    }

    /**
     *
     * @param context
     */
    public MyView(Context context) {
        super(context);
        init();
    }

    /**
     * 有两个参数的构造方法  才能让控件xml布局中进行定义
     * @param context
     * @param attrs
     */
    public MyView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }

    public MyView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init();
    }

    /**
     * 在控件中进行绘制的方法
     * 1、画笔  Paint
     * 2、画板  canvas
     * @param canvas
     */
    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);

        /*在屏幕上画一条线
        canvas.drawLine(downX + 0,downY + 0,downX + 100,downY + 100,paint);
        在屏幕上画一个矩形
        paint.setStyle(Paint.Style.STROKE);
        paint.setColor(Color.RED);
        canvas.drawRect(downX + 30,downY + 30, downX + 200,downY + 200,paint);*/
        //在屏幕上画一个        paint.setColor(Color.BLUE);
        canvas.drawCircle(downX + 50,downY + 50,50,paint);

    }

}
在main_activitty中调用这个自定义View就好了

你可能感兴趣的:(自定义view画一个圆)