1.Color(颜色)类

Android系统中颜色的常用表示方法有以下3种:
  (1)int color = Color.BLUE;
  (2)int color = Color.argb(150,200,0,100);
  (3)在xml文件中定义颜色;
  在实际应用当中,我们常用的颜色有以下一些,其颜色常量及其表示的颜色如下所示:
  Color.BLACK      黑色                                       Color.GREEN                  绿色
  Color.BLUE        蓝色                                       Color.LTGRAY                浅灰色
  Color.CYAN       青绿色                                     Color.MAGENTA              红紫色
  Color.DKGRAY    灰黑色                                    Color.RED                      红色
  Color.YELLOW    黄色                                       Color.TRANSPARENT       透明
  Color.GRAY        灰色                                       Color.WHITE                  白色
   2.Paint(画笔)类
   要绘制图形,首先得调整画笔,按照自己的开发需要设置画笔的相关属性。Pain类的常用属性设置方法如下:
  setAntiAlias();              //设置画笔的锯齿效果
  setColor();                   //设置画笔的颜色
  setARGB();                  //设置画笔的A、R、G、B值
  setAlpha();                   //设置画笔的透明度
  setTextSize();               //设置字体的尺寸
  setStyle();                    //设置画笔的风格(空心或实心)
  setStrokeWidth();        //当画笔样式为STROKE或FILL_OR_STROKE时(空心样式时),设置笔刷的粗细度。
  getColor();                   //获取画笔的颜色
       setDither();                  //设定是否启用图像抖动处理,使绘制出来的图像更加饱满平滑清晰
       setMaskFilter();           //设置滤镜效果
       setShadowLayer(float radius, float dx, float dy, int shadowColor);    //设置阴影,radius表示阴影的扩散半径;dx和dy表示阴影平面上的偏移值;shadowColor就不说了阴影颜色。   
       setStrokeCap();          //设置画笔的笔触风格 ,比如:ROUND,SQUARE和BUTT
       setStrokeJoin();          //用于设置接合处的形态,比如一条线其实是由无数条小线拼接成的,拼接处的形状就由该方法指定。可选参数是:BEVEL,MITER,ROUND。
setTextSkewX();         //设置斜体文字
设置Typeface对象,即字体风格,包括粗体,斜体以及衬线体,非衬线体等
设置带有下划线的文字效果

       setStrikeThruText();   //设置带有删除线的效果

  3.Canvas(画布)类

  画笔属性设置好之后,还需要将图像绘制到画布上。Canvas类可以用来实现各种图形的绘制工作,如绘制直线、矩形、圆等等。Canvas绘制常用图形的方法如下:

  绘制直线:canvas.drawLine(float startX, float startY, float stopX, float stopY, Paint paint);

  绘制矩形:canvas.drawRect(float left, float top, float right, float bottom, Paint paint);

  绘制圆形:canvas.drawCircle(float cx, float cy, float radius, Paint paint);

  绘制字符:canvas.drawText(String text, float x, float y, Paint paint);

       绘制圆点:drawPoint(float x, float y, Paint paint);

绘制图形:canvas.drawBitmap(Bitmap bitmap,Rect, Rect,Paint paint);

                          参数一就是我们常规的Bitmap对象,

,代表要绘制的bitmap 区域

                          参数三是目标区域,代表将要把bitmap绘制在屏幕的那个地方

                          参数四是Paint画刷对象,因为用到了缩放和拉伸的可能,当原始Rect不等于目标Rect时性能将会有大幅损失。

drawArc(RectF oval, float startAngle, float sweepAngle, boolean useCenter, Paint paint);

                        参数一是RectF对象,一个矩形区域椭圆形的界限用于定义在形状、大小、电弧,

                         参数二是起始角(度)在电弧的开始,



                         参数三扫描角(度)开始顺时针测量的,



                         参数四是如果这是真的话,包括椭圆中心的电弧,并关闭它,如果它是假这将是一个弧线,

参数五是Paint对象;

       4.自定义View的基本实现方法

MyView中,重写构造方法,加载自定义属性。然后,重写类中的onMeasure()用于测量控件的宽高。然后,重写类中的onDraw()函数。最后,在onDraw()函数中使用Paint和Canvas对象绘制我们需要的图形。