自定义view(视图类)

来源:互联网 发布:杭州seo外包服务 编辑:程序博客网 时间:2024/05/17 18:01

  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);

  绘制图形:canvas.drawBirmap(Bitmap bitmap, float left, float top, Paint paint);

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

  首先,我们需要自定义一个类,比如MyView,继承于View类。然后,复写View类的onDraw()函数。

public class MyView extends View {


Context m_context;
public MyView(Context context) {
super(context);
// TODO Auto-generated constructor stub

m_context=context;
}

//重写OnDraw()函数,在每次重绘时自主实现绘图
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);


//设置画笔基本属性
Paint paint=new Paint();
paint.setAntiAlias(true);//抗锯齿功能
paint.setColor(Color.RED);  //设置画笔颜色    
paint.setStyle(Style.FILL);//设置填充样式   Style.FILL/Style.FILL_AND_STROKE/Style.STROKE
paint.setStrokeWidth(5);//设置画笔宽度
paint.setShadowLayer(10, 15, 15, Color.GREEN);//设置阴影

//设置画布背景颜色     
        canvas.drawRGB(255, 255,255);

        //画圆
        canvas.drawCircle(190, 200, 150, paint);
}


}

0 0
原创粉丝点击