如何在Android中创建弧形进度条?

时间:2017-09-25 19:27:03

标签: android progress-bar android-custom-view

我正在尝试创建一个进度条,如下图所示。

我的要求是: 1.我希望能够以编程方式为其设置进度值。 2.我希望能够改变弧的颜色 - 背景一个(灰色)和前景一个(绿色)。

我查看了图书馆,但没有发现在这种特殊的形状和​​风格中做到这一点。我不够精通创建自定义drawables以便能够自己创建它。任何帮助表示赞赏!

enter image description here

2 个答案:

答案 0 :(得分:3)

除上述答案外,您还可以使用CircleProgress,它似乎与您的用例完全相同:

enter image description here

用法:

<com.github.lzyzsd.circleprogress.ArcProgress
    android:id="@+id/arc_progress"
    android:background="#214193"
    android:layout_marginLeft="50dp"
    android:layout_width="100dp"
    android:layout_height="100dp"
    custom:arc_progress="55"
    custom:arc_bottom_text="MEMORY"/>

另外,如果你检查这个库(自述文件的底部)的许可证,似乎非常有利于你使用它。

答案 1 :(得分:2)

您可以使用SeekArc。它可以做你获得结果所需的一切。

它看起来像这样

<com.triggertrap.seekarc.SeekArc
    android:id="@+id/seekArc"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:padding="30dp"
    seekarc:rotation="180"
    seekarc:startAngle="30"
    seekarc:sweepAngle="300"
    seekarc:arcColor="@color/grey"
    seekarc:progressColor="@color/green"
    seekarc:touchInside="true" />