paint = new Paint(); //抗锯齿 paint.setAntiAlias(true); paint.setARGB(255, 255, 0, 255); paint.setStrokeWidth(4); //Style.FILL就是实心的圆,Style.STROKE只画圆的边,Style.FILL_AND_STROKE有边有实心 paint.setStyle(Paint.Style.STROKE);// 1 canvas.drawCircle(center_x, center_y, r, paint);// 2 canvas.drawArc(0,0,200,200,0,270,false,paint);
解释
paint.setStyle(Paint.Style.STROKE); 注释解释的很清楚 最后Style.FILL_AND_STROKE 画出来和Style.FILL 是一样的
paint.setStrokeWidth(4);这个很有用 可以画环 画弧形(自定义进度条)
1 画出来的效果
FILL STROKE
参数分别是:圆心X左边,圆心Y坐标,半径,画笔
2 换出来的效果
FILL STROKE
黑色的边框请忽略~~~~~~~~~~~~~~~~~~~~~
将上图STROKE 的线条加粗 paint.setStrokeWidth(4);这个方法里的值变大 然后修改 drawArc里的其实角度和终止角度 就可以得到一个炫酷的progressBar
这个函数是画 扇形 的 但是为什么会出现上面的情况呢? 因为canvas.drawArc(0,0,200,200,0,270,false,paint); 因为方法中的第7个参数的原因
参数分别是:包含这个扇形的容器(其实是一个矩形)的坐标(顺序:左上右下) 第五个参数:起始角度(X轴正半轴为0),六参数:终止角度(顺时针画),七参数:画笔
下面是 第七个参数为 true 的图形
FILL STROKE
第七个参数的意思是 是否连接圆心
0 1