今天彻底的了解了画图的工具,希望能帮助各位
在我们写一个类继承view的同时,需要实现一个onDraw()的方法
Paint paint=new Paint();
paint.setAntiAlias(true); //设置画笔为无锯齿,如果不设置,可以很明显的看出来,结果不好,建议还是设置上
// paint.setStyle(Style.STROKE);//表示一个空心的圆
paint.setColor(Color.BLUE);//也就是设置笔的颜色
//如果是空心的话,要设置划线的粗细,也就是你笔的粗细,必须在canvas.drawRect()方法之上才可以
// paint.setStrokeWidth((float) 3.0);
//这是画一个圆,第1.2参数表示圆心的位置,50表示圆的半径,最后一个也就是画图的工具,就是你的笔
// canvas.drawCircle(100, 100, 50, paint);
//下面是一个绘制矩形的
// canvas.drawRect(80,20,160,500, paint);//前四个数字就是距离上下左右的距离,其余的不解释
//其实绘制矩形还有另一种方法,也就是把常见好的矩形往里面装
/* Rect rect=new Rect(80, 20,300, 500);// 绘制矩形
canvas.drawRect(rect, paint); //开始绘制
*/
//绘制文字的方法
// paint.setTextSize(80);//文字的带下
// canvas.drawText("sahfuoafjqwfq", 130, 100, paint);//文字 坐标 笔
//绘制椭圆,在这里说一下.绘制矩形跟椭圆的区别.椭圆的单位都是float 而矩形都是int的
// RectF rectF=new RectF(80, 20,300, 500); 其实也可以这样设置的,看下面,上面的几个都可以这样设置的
RectF rectF=new RectF();
rectF.left=80;
rectF.bottom=20;
rectF.right=40;
rectF.top=80;
canvas.drawOval(rectF, paint);
/* //绘制圆角矩形
RectF r2=new RectF(); //RectF对象
r2.left=50; //左边
r2.top=400; //上边
r2.right=450; //右边
r2.bottom=600; //下边
canvas.drawRoundRect(r2, 10, 10, paint); //绘制圆角矩形
*/
//其实线也一样的,下面是最后一个例子,不在解释了,数组中的参数其实可以设置很多,但要记住,每2个代表一个点,会依次的连接起来
/* float[] xx={50,50,400,50,
400,50,400,600,
400,600,50,600,
50,600,50,50};
canvas.drawLines(xx, paint);*/
//再来一个吧,一般情况下会出现数学上的数据表格
//绘制圆弧
RectF rectF2=new RectF(100, 100, 400, 300);
//rectF2 圆弧所在的椭圆对象,225圆弧的起始角度,90圆弧的角度 ,true 是否显示半径连线,true表示显示圆弧与圆心的半径连线,false表示不显示
canvas.drawArc(rectF2, 225, 90, true, paint);
要记得xml文件中是自定义的空间比如 我上面的这个类是package com.example.cavastest;
那么简单的定义就是
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<com.example.cavastest.MyView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
/>
</RelativeLayout>
突然又想起来一个