今天UI给了张进度条的图片
这个样子 网上肯定没有相同了的 所以自己画的
思路很简单 因为我这个不需要拖动 只要展示就可以 所以就是画的圆和线条加载一起 在下方显示进度
package cn.dlc.Baimi.view;
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.util.Log;
import android.view.View;
public class DrawView extends View {
public DrawView(Context context) {
super(context);
}
public DrawView(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
}
public int QISHI_X = 30;//
public int QISHI_Y = 30;//Y同意
public int DIAN_SIZE = 10;
public int QISHI_XIAN_SX = 30;
public int QISHI_XIAN_PX = 30;
public int ZHONG_QIU_X = 30;
public int TEXT_SIZE = 30;
public int HOU_XIAN_SX = 30;
public int HOU_XIAN_PX = 30;
public int HOU_QIU_X = 30;
public int XIAN = 100;
public int YIYOU = 50;
public void setYIYOU(int YIYOU) {
this.YIYOU = YIYOU;
invalidate();
}
public void iniview(int context){
YIYOU=context;
invalidate();
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
/*
* 方法 说明 drawRect 绘制矩形 drawCircle 绘制圆形 drawOval 绘制椭圆 drawPath 绘制任意多边形
* drawLine 绘制直线 drawPoin 绘制点
*/
int weth = getWidth();
int XIANCHANG =(weth-(DIAN_SIZE*3))*100;//线的长度
int JIAZAI_CHANG = XIANCHANG/100*YIYOU/100;//第一条线的长度等于总长减去三个球的大小 分线的长度%
int shengyu_chang = XIANCHANG/100 - JIAZAI_CHANG;
int y = DIAN_SIZE; //线的y 等于求的一半-5
int one_xian = QISHI_X + DIAN_SIZE;//其实的x轴加求的大小
Log.e("TAG","第一"+JIAZAI_CHANG+"第二"+shengyu_chang+"总长"+weth);
// int one_xian_end = QISHI_X + DIAN_SIZE + XIAN;
//设置画笔
Paint paint = new Paint();
paint.setColor(Color.parseColor("#FF9DB7"));
paint.setStrokeWidth(6);
canvas.drawCircle(QISHI_X, y, DIAN_SIZE, paint);
paint.setStrokeWidth((float) 2.0);
paint.setColor(Color.parseColor("#FF9DB7"));
canvas.drawLine(one_xian, y, JIAZAI_CHANG, y, paint);
paint.setColor(Color.parseColor("#FF9DB7"));
paint.setStrokeWidth(6);
int tow_qiu = JIAZAI_CHANG+DIAN_SIZE;//第二个球的x 是第一条线的长度加求的大小
canvas.drawCircle(tow_qiu, y, DIAN_SIZE, paint);//第二个球
paint.setColor(Color.parseColor("#FF9DB7"));
paint.setTextSize(30);
canvas.drawText("0", QISHI_X, y+33, paint);
paint.setTextSize(30);
canvas.drawText(YIYOU+"%", tow_qiu-30, y+33, paint);
paint.setStrokeWidth((float) 2.0);
paint.setColor(Color.parseColor("#E5E5E5"));
int two_xian = tow_qiu+DIAN_SIZE;
canvas.drawLine(two_xian, y, two_xian+shengyu_chang, y, paint);
paint.setColor(Color.parseColor("#E5E5E5"));
paint.setStrokeWidth(6);
canvas.drawCircle(two_xian+shengyu_chang , y, DIAN_SIZE, paint);
paint.setTextSize(30);
if(YIYOU!=100){
canvas.drawText("100%", weth-75, y+33, paint);
}
}
}
写的比较糙 复制过去就能用
xml里面自己写吧 只要告诉别小于他就行
有什么问题下方留言我