【发布时间】:2016-05-29 08:47:33
【问题描述】:
我正在尝试创建一个圆角方形线进度条来围绕图像绘制进度。
到目前为止,我有以下 XML 定义了我的圆角方形线:
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<stroke
android:width="6dp"
android:color="@android:color/holo_green_light" />
<padding
android:left="5dp"
android:right="5dp"
android:bottom="5dp"
android:top="5dp" />
<corners android:radius="50dp" />
</shape>
我知道这个解决方案:https://github.com/mrwonderman/android-square-progressbar,但我不感兴趣,因为效果不是我想要的。
我尝试在圆角方形线的顶部创建一个普通圆圈,并尝试将两者与 PorterDuff 合并,但到目前为止我还无法创建进度条效果。绘制该圆圈的饼图以绘制进度。
我还尝试以编程方式创建圆角正方形,以防 XML 膨胀被视为普通图像,并且在 PorterDuff 合并期间考虑了所有像素。但结果相同。
【问题讨论】:
-
创建您的自定义
Drawable类,该类将在调用setProgressDrawable时使用 -
@pskink ,是的,谢谢,但是如何在线上绘制正确的进度效果?
-
您是否创建了自定义 Drawable 类?绘制圆形矩形时遇到什么问题?
-
现在,我只有一个 View 类,它将 XML drawable 转换为位图,然后我尝试在该位图上绘制以创建所需的效果(无限后循环一次又一次地递增进度) .问题是到目前为止我还没有找到绘制进度效果的正确方法。 mrwonderman 库中的解决方案对我来说似乎不适用于那里,因为我有圆角并且似乎也不太方便实施。谢谢
-
这里有简单的解决方案:pastebin.com/p3LNt4Jg
标签: android line android-progressbar rounded-corners