android中简单的图形绘制

今天彻底的了解了画图的工具,希望能帮助各位

在我们写一个类继承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>



突然又想起来一个

  1.    bitmap=((BitmapDrawable)getResources().getDrawable(R.drawable.bulb_on)).getBitmap();  
  2.     canvas.drawBitmap(bitmap, 50, 150, null); 
获得一张图片,将图片转换成bitmap类型的,然后在画出来

你可能感兴趣的:(android中简单的图形绘制)