<分区>
我需要制作一个不确定的进度条,它与默认小部件相同,只是颜色不同。我无法使用着色,因为我需要 api 15+ 的支持。
到目前为止,我的解决方案是使用自定义可绘制 xml:
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:pivotX="50%" android:pivotY="50%" android:fromDegrees="0"
android:toDegrees="360">
<shape android:shape="ring" android:innerRadiusRatio="3"
android:thicknessRatio="8" android:useLevel="false">
<size android:width="48dip" android:height="48dip" />
<gradient android:type="sweep" android:useLevel="false"
android:startColor="somecolor" android:centerColor="somecolor"
android:centerY="0.50" android:endColor="somecolor" />
</shape>
</rotate>
然后定义自定义可绘制对象:
<ProgressBar
android:id="@+id/customprogressbar"
android:layout_width="42dp"
android:layout_height="35dp"
android:layout_gravity="center"
android:visibility="gone"
android:indeterminateDrawable="@drawable/customprogressbardrawable"
style="@android:style/Widget.ProgressBar"
/>
这行得通,但它看起来不像默认的进度条。我可以使用哪些默认设置 - 或者是否有更好的方法使我的进度条在各个方面都与默认小部件完全相同,只是颜色不同?