Android图形编程基础
Paint的设置方法
setAntiAlias:设置画笔的锯齿效果
setColor:设置画笔颜色
setARGB:设置画笔的a,r,g,b值
setAlpha:设置Alpha值
setTextSize:设置字体尺寸
setStyle:设置画笔风格,空心或者实心
setStrokWidth:设置空心的边框宽度
getColor:得到画笔的颜色
getAlpha:得到画笔的Alpha值
使用Canvas绘制点、线、图形
//绘制直线
drawLine(float startX,float startY,float stopX,float stopY,Paint paint)
//绘制矩形
drawRect(float left,float top,float right,float bottom,Paint paint)
//绘制圆形
drawCircle(float cx,float cy,float radius,Paint paint)
使用Canvas绘制文字
drawText(String text,float x,float y,Paint paint)
使用Canvas绘制图片
drawBitmmap(Bitmap bitmap,float left,float top,Paint paint)
实例代码
首先前面一文已经讲过了基本的绘图方法,调用onDraw方法,创建Paint画笔进行作画。
我们在下面代码中进行详细的Paint的设置,并在画布上画出了矩形、圆、文字、图形。
代码如下:
public class MyView extends View {
public MyView(Context context) {
super(context);
}
//当Android系统需要绘制一个View对象时,就会调用该对象的onDraw方法
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//创建一个画笔对象
Paint paint = new Paint();
//设置画笔颜色
//paint.setColor(Color.BLUE);
//设置透明度,红,绿,蓝
paint.setARGB(150,0,100,200);
//设置画笔为空心的
paint.setStyle(Paint.Style.STROKE);
//设置空心画笔边界宽度
paint.setStrokeWidth(10);
//设置字体大小
paint.setTextSize(100);
//在画布上画出一条线,参数为:初始的横、纵坐标,结束的横、纵坐标,画笔
canvas.drawLine(0,0,200,200,paint);
//在画布上画出一个矩形,左边界300,上边界50,右边界500,下边界300
canvas.drawRect(300,50,500,300,paint);
//在画布上画出一个圆,圆心在(700,700),半径为100
canvas.drawCircle(200,500,100,paint);
//在画布上画出一些字符,左基准线在300,下基准线在800
canvas.drawText("apple",400,500,paint);
//在画布上画出一个左边界在300,上边界在700的图片
canvas.drawBitmap(BitmapFactory.decodeResource(getResources(),R.drawable.picture),300,700,paint);
}
}
最后在MainActivity调用它。
绘制出的样子如下:
注:如果不设置画笔为空心的话,那么画出的图形是这个亚子的…