package chenchneg20170821.bwie.com.lianxi09day27_1.weigh; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapShader; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Path; import android.graphics.RectF; import android.graphics.Shader; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.util.AttributeSet; import android.view.View; import chenchneg20170821.bwie.com.lianxi09day27_1.R; /** * Created by dell on 2017/9/27. */ public class Viewone extends View { private static final String ATG="Viewone"; public Viewone(Context context){ super(context); } public Viewone(Context context, AttributeSet attrs) { super(context, attrs); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); //创建笔画 Paint paint=new Paint(); //抗锯齿 paint.setAntiAlias(true); //设置颜色 paint.setColor(Color.RED); //设置笔画粗细 paint.setStrokeWidth(4); //设置样式 paint.setStyle(Paint.Style.FILL_AND_STROKE); //画圆 Drawable drawable = getResources().getDrawable(R.mipmap.ic_launcher); Bitmap bitmap; bitmap = ((BitmapDrawable)drawable).getBitmap(); BitmapShader shader= new BitmapShader(bitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP); paint.setShader(shader); canvas.drawCircle(100,100,100,paint); //绘制矩形 canvas.drawRect(1010,150,600,654,paint); //绘制圆角矩形 RectF rectF=new RectF(100,350,220,260); canvas.drawRoundRect(rectF,40,40,paint); //绘制扇形 RectF rectF2=new RectF(100,370,210,570); canvas.drawArc(rectF2,0,150,true,paint); //绘制点 canvas.drawPoint(20,320,paint); //绘制路径 Path path = new Path(); //起始位置 path.moveTo(100,320); path.lineTo(10,450); path.lineTo(110,450); path.close(); canvas.drawPath(path,paint); } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); } @Override protected void onLayout(boolean changed, int left, int top, int right, int bottom) { super.onLayout(changed, left, top, right, bottom); } @Override protected void onAttachedToWindow() { super.onAttachedToWindow(); } @Override protected void onDetachedFromWindow() { super.onDetachedFromWindow(); } }