【问题标题】:Create multiple colour progress bar创建多色进度条
【发布时间】:2017-10-12 14:33:12
【问题描述】:

我想创建具有多种颜色的进度条,它可以是 5 种固定颜色(如 setProgress(100/20 ratio))。

我们如何用颜色划分修复部分的进度条?

有人可以建议我是否有任何图书馆或示例?

我还想在进度条的中心显示文本。

这是进度条视图,在此先感谢您的帮助和建议..:)

【问题讨论】:

    标签: android android-view android-custom-view android-drawable android-progressbar


    【解决方案1】:

    Canvas 类有一个函数 drawArc,它可以满足您的需要。

    这段代码给了你一些提示。

       private static final int ARCS_COUNT = 4;
       private static final int SWEEP_ANGLE = 360/(ARCS_COUNT+1);   // 72
       private static final int[] colours = 
                new int[] {Color.RED, Color.YELLOW, Color.GREEN, Color.BLUE};
    
    
       .....
    
       Paint p = new Paint();
       p.SetStyle(PaintStyle.STROKE);
       p.setStrokeWidth(4):
    
       // Point (50,50) will be the centre of the bar.
       RectF rectF = new RectF(0,0,100,100); 
       int startAngle = 180;
    
       for (int i = 0; i<ARCS_COUNT; i++) {
         p.setColor(colours[i]);
         canvas.drawArc(rectF, startAngle, SWEEP_ANGLE, false, p);
         startAngle += SWEEP_ANGLE;     
       }
    

    【讨论】:

      猜你喜欢
      • 2015-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多