Canvas和Paint的使用小结

来源:互联网 发布:银行业务流程优化 编辑:程序博客网 时间:2024/06/01 23:09

一直想学习自定义View方面的知识,看的资料比较多,但是真正自己动手的实践很少,趁最近一段时间有点空闲,便查看AndroidAPI,照着上面的方法写点东西

一.Canvas的方法

1.drawArc(绘制弧形),代码如下

        Paint paint = new Paint();        //抗锯齿        paint.setAntiAlias(true);        //同样也是抗锯齿        //paint.setFlags(Paint.ANTI_ALIAS_FLAG);        //设置描边        paint.setStyle(Paint.Style.STROKE);        //描边的宽度,当参数为0时,表示极细的线        paint.setStrokeWidth(0);        //设置画笔的颜色        paint.setColor(Color.parseColor("#8FBC8F"));        //参数分别为矩形左边的x轴坐标、上边的y轴坐标、右边的x轴坐标、下边的y轴坐标                RectF rectF = new RectF(100,200,400,500);        //第二个参数为弧的起始角度,3点钟方向为0、第三个参数为弧扫过的角度、第四个参数为是否使用中心        canvas.drawArc(rectF,20,320,true,paint);

当drawArc第四个参数为true时的效果
这里写图片描述
当为false时的效果
这里写图片描述

2.drawCircle(绘制圆形)
Paint paint = new Paint();
paint.setAntiAlias(true);
//设置描边
paint.setStyle(Paint.Style.STROKE);
//描边的宽度,当参数为0时,表示极细的线
paint.setStrokeWidth(0);
//设置画笔的颜色
paint.setColor(Color.parseColor(“#8FBC8F”));
//参数分别为:圆点的x轴坐标、y轴坐标、半径大小、画笔
canvas.drawCircle(200,300,100,paint);
效果图如下
这里写图片描述
当注释上述paint.setStyle(Paint.Style.STROKE);代码时,效果图如下
这里写图片描述

3.drawOval(绘制椭圆形)

RectF rectF = new RectF(100,200,400,400);canvas.drawOval(rectF,paint);

效果图如下
这里写图片描述

4.drawRect(绘制矩形)

        RectF rectF = new RectF(100,200,400,400);        canvas.drawRect(rectF,paint);

这里写图片描述

5.drawRoundRect(绘制圆角矩形)

        RectF rectF = new RectF(100,200,400,400);        //第二个参数为x轴方向的圆角半径,第三个为y轴方向的圆角半径        canvas.drawRoundRect(rectF,10,10,paint);

这里写图片描述

0 0
原创粉丝点击