我想创建一个圆边的圆形ProgressBar。我已经尝试过在这里托管的CircleProgress库
https://github.com/lzyzsd/CircleProgress
但DonutProgress没有我想要的圆形边缘。但是使用我的自定义progreesDrawable,我也无法实现它。
我想设计进度条,如下所示
一个角落如图所示。
我的custom_progress_bar.xml
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@android:id/progress">
<rotate
android:fromDegrees="90"
android:toDegrees="90"
android:pivotX="50%"
android:pivotY="50%" >
<shape
android:innerRadiusRatio="2.5"
android:shape="ring"
android:thicknessRatio="15.0" >
<corners
android:radius="5dp"
android:topRightRadius="5dp"
android:topLeftRadius="5dp"
/>
<gradient
android:centerColor="#8AFF00"
android:endColor="#006554"
android:startColor="#006554"
android:type="sweep" />
</shape>
</rotate>
</item>
</layer-list>
我的布局文件
<RootLayout...>
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="152dp"
android:layout_height="152dp"
android:layout_centerInParent="true"
android:progress="100"
android:indeterminate="false"
android:progressDrawable="@drawable/back_progress" />
<ProgressBar
android:id="@+id/progressWheel"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="152dp"
android:layout_height="152dp"
android:layout_centerInParent="true"
android:progress="90"
android:indeterminate="false"
android:progressDrawable="@drawable/circular_progress_bar" />
</RootLayout...>
此外,我必须使用两个ProgressBar相互重叠才能实现背景(灰色)。我尝试在custom_progress_bar.xml中定义背景形状,但它不起作用,所以我不得不这样做。我知道它不是解决方案,但我无法以其他方式实现。
任何人都可以帮助我以更好的方式设计这个进度条,也可以使用圆角。
答案 0 :(得分:1)
我参加派对有点晚了,但是我在castorflex的smoothProgressBar中添加的代码可以创建你描述的进度条!图书馆已经有了圆形的边缘进度条,我和朋友(向Ryan大喊)能够很好地使用它。 https://github.com/alex-sanchez-sd/SmoothProgressBar