【问题标题】:progress indicator进度指示器
【发布时间】:2010-04-22 08:20:25
【问题描述】:

有没有办法让进度条变成圆形?我的应用程序中有一个播放按钮,我想在按钮周围显示加载歌曲的进度。

【问题讨论】:

  • 也许我没有得到你的问题,但默认的 ProgressBar 是一个圆形的。您实际上通过使用 xml attr android:progressBarStyleHorizo​​ntal 将其更改为水平模式
  • erm...基本上我想要做的是在我的按钮周围画一个圆圈,并向用户显示已流式传输的数据量。在播放歌曲时,圆圈(按钮的边框)会在加载和播放时变为绿色

标签: android progress-bar


【解决方案1】:

ProgressBar 小部件有两种影响其外观的模式:

  • 在进度模式下,您会看到一条直线,您可以在其中设置进度值
  • 在不确定模式下,您会看到一个旋转的圆形动画,直到您停止它

我最近构建了一个倒计时进度指示器,我想要一个盒子像时钟一样随着时间的流逝而“放松”。这听起来很像您想要做的,只是相反。

我所做的是创建自己的子类 View。然后在我的 onDraw() 覆盖中,我直接在画布上绘制。听起来好像很麻烦,但它真的很容易,实际上有点控制整个绘画过程。

这样的东西可以一直画盒子......

@Override
public void onDraw(Canvas canvas) {
    Rect rect = canvas.getClipBounds();
    rect.inset(10f, 10f);
    Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
    paint.setStyle(Paint.Style.STROKE);
    paint.setStrokeJoin(Join.ROUND);
    paint.setColor(Color.BLUE);
    paint.setStrokeWidth(10f);
    canvas.drawRect(countdownRect, paint);
}

...您可以使用许多绘制方法来绘制其他形状、线条、路径、圆形等。

【讨论】:

    猜你喜欢
    • 2011-09-29
    • 2021-05-10
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多