package zhangyanran201800830.bwie.com.zidingyi.moni; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.support.annotation.Nullable; import android.util.AttributeSet; import android.view.View; public class MoNiTwo extends View { private Paint mpaint; //横竖轴的间隔 private int wsize = 50; private int hsize = 50; //数组 private Integer [] a={100,200,50,580,300,200,70}; private String [] c={"0","2","4","6","8","10","12"}; private String [] b={"周日","周一","周二","周三","周四","周五","周六"}; //数组数据 private int top ; private String texttop; private String sumtop; //方位宽度 private int left = 70; private int textleft = 70; private int sumleft = 410; private int right = 120; public MoNiTwo(Context context) { this(context,null); } public MoNiTwo(Context context, @Nullable AttributeSet attrs) { this(context, attrs,0); } public MoNiTwo(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); //创建画笔 mpaint = new Paint(); mpaint.setColor(Color.BLACK);//颜色 mpaint.setStrokeWidth(5);//宽度 mpaint.setTextSize(30);//字体大小 } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); canvas.drawLine(50,400,700,400,mpaint);//横轴 canvas.drawLine(50,50,50,400,mpaint);//竖轴 //循环竖轴 for (int i=0;i<7;i++){ wsize += 90; canvas.drawLine(wsize,50,wsize,400,mpaint); } //循环横轴 for (int i=0;i<7;i++){ hsize += 50; canvas.drawLine(50,hsize,679,hsize,mpaint); } //循环画矩形 for (int j = 0 ; j < a.length ; j++){ top = a[j]/2; canvas.drawRect(left,400-top,right,400,mpaint); left+=90; right+=90; } //循环日期 for (int j = 0 ; j < b.length ; j++){ texttop = b[j]; canvas.drawText(texttop,textleft,450,mpaint); textleft+=90; } //循环Y轴数量 for (int k = 0;k<c.length;k++){ sumtop = c[k]; canvas.drawText(sumtop,680,sumleft,mpaint); sumleft-=50; } } }
自定义View画条形图
最新推荐文章于 2024-06-15 19:15:07 发布