Canvas类 的继承关系:
Canvas类说明:
canvas(画布)是用来在屏幕上绘画的类,可以根据一定的设置画出自定义的任何视图。
Canvas类常用方法:
draw系列绘图方法: 弧线(Arc) 填充颜色(argb/color) 图片(bitmap) 圆形(Circle) 椭圆(oval) 点(point)
线(line) 矩形(Rect) 圆角矩形(RoundRect) 文本(Text) 路径(Path)
canvas画布处理方法: 旋转(rotate) 平移(translate) 缩放(scale) 错切(skew)
保存当前状态(save) 返回之前(保存的)状态(restore) 新建图层(saveLayer())
将某图层的内容画到canvas默认图层上(restoreToCount())
其他方法: drawTextOnPath()--基于路径画文字 顶点绘制法(Vertices)
Canvas类常用方法详细说明:
1. drawArc():画弧线。
两个重载方法:
第一个方法: canvas.drawArc(RectF oval, int startAngle, int sweepAngle, boolean useCenter, Paint mPaint);
第一个参数: 画弧线的区域。(以弧线圆心为中心的一个矩形区域,如果此区域是正方形,则圆弧是圆的几分之几,如果不是正方形,则为椭圆的几分之几)。
第二、三个参数:分别是起始角度值和扫掠角度值。 如从0°(startAngle)开始,绘制160°(sweepAngle)结束。
第四个参数:是否绘制圆心。 true 则绘制出来的图形类似于扇形, false则绘制出来的图形类似于月亮。
第五个参数:画笔。可以设置一些相关属性来改变绘制结果。 如mPaint.setStyle(Paint.Style.Stroke);设置画笔仅描边,则会绘制出一条弧线。
第二个方法:canvas.drawArc(float left, float top, float right, float bottom, int startAngle, int sweepAngle, boolean useCenter, Paint mPaint);
前四个参数设置画弧线的区域,其他与上面保持一致。
注: 扫掠的过程是 沿顺时针方向 的。
2. drawARGB()/drawColor():在画布上填充颜色。
drawARGB(int alpha, int red, int green, int blue); 分别是 透明度,R,G,B值。
dra