Android自定义view重点 : 重写onDraw()方法, 在里面用canvas绘制, 并配合范围裁剪和几何变换.
1. Android自定义view中重要的方法 : onDraw()方法 (主体内容绘制)
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
}
2. 绘制的关键 : canvas - 绘制工具
- ① canvas的绘制类方法 :
drawXXX()
, 其中关键参数为Paint - Paint 类的几个最常用的方法 :
Paint.setStyle(Style style) 设置绘制模式
Paint.setColor(int color) 设置颜色
Paint.setStrokeWidth(float width) 设置线条宽度
Paint.setTextSize(float textSize) 设置文字大小
Paint.setAntiAlias(boolean aa) 设置抗锯齿开关
Paint paint = new Paint();
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawCircle(300, 300, 200, paint);
}
- ② canvas的辅助类方法 : 范围剪切
clipXXX()
, 几何变换Matrix
- 绘制内容的范围剪切 例如 :
canvas.clipRect();
, canvas.clipPath();
- 绘制内容的几何变换 : 绘制区域的四个顶点任意拉扯而变化成的图形. 例如 放大/缩小, 平移/旋转, 错切 等.
- 顺序需要注意 : 先绘制的内容会被后绘制的遮盖住.