简单自定义view

来源:互联网 发布:数据鲜活度 编辑:程序博客网 时间:2024/05/22 15:45
package com.example.administrator.myview;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Rect;import android.graphics.RectF;import android.util.AttributeSet;import android.view.View;/** * Created by Administrator on 2016/6/8. */public class MyView extends View {    private Paint mPaint;//画笔    private Bitmap mBitmap;    //new 对象的时候 需要调用这里的构造方法    // 直接写到xml 布局里 不会调用 构造方法    public MyView(Context context) {        super(context);        init();    }    public MyView(Context context, AttributeSet attrs) {        super(context, attrs);        init();    }    private  void  init(){        mPaint = new Paint();        mBitmap = BitmapFactory.decodeResource(this.getResources(),R.mipmap.aa);    }    @Override    protected void onDraw(Canvas canvas) {        super.onDraw(canvas);        mPaint.setColor(Color.BLUE);//设置画笔颜色        mPaint.setAntiAlias(true);//设置抗锯齿        mPaint.setStyle(Paint.Style.STROKE);//画笔样式        canvas.drawLine(0,0,200,400,mPaint);//画直线        Rect mRect = new Rect(20,20,100,200);//设置矩形参数        canvas.drawRect(mRect,mPaint);//画矩形        //x轴 200  y轴200 半径 50        canvas.drawCircle(200,200,50,mPaint);//画圆        RectF mRectF = new RectF(20,20,100,200);        canvas.drawArc(mRectF,90,60,true,mPaint);//圆弧        canvas.drawBitmap(mBitmap,200,200,mPaint);//画bitmap    }}
0 0