ProgressBar Circle在android L(API 21)上没有显示进度

时间:2014-10-23 16:05:26

标签: android android-progressbar android-5.0-lollipop

我有一个循环的ProgressBar来计算时间。它在kitkat和之前完美运行,但在Android L上,无论我设置了什么进展,它总是显示一个完整的圆圈。

Image

layout.xml

<ProgressBar
                android:id="@+id/progressBar1"
                style="?android:attr/progressBarStyleHorizontal"
                android:layout_width="100dp"
                android:layout_height="100dp"
                android:indeterminate="false"
                android:max="200"
                android:progress="100"
                android:progressDrawable="@drawable/progresscircle" />

progresscircle.xml

 <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item>
        <shape
            android:innerRadiusRatio="3.4"
            android:shape="ring"
            android:thicknessRatio="6.0" >
            <solid 
                android:color="#ffffff" />
        </shape>
    </item>
        <item>
            <rotate
                android:drawable="@drawable/progress_particle"
                android:fromDegrees="0"
                android:pivotX="50%"
                android:pivotY="50%"
                android:toDegrees="360" />
        </item>

    </layer-list>

1 个答案:

答案 0 :(得分:29)

标签下的android:useLevel的默认值在L预览版本中错误地更改为false。您可以通过明确地将其设置为true来解决此问题。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item>
        <shape
            ...
            android:useLevel="true">
            <solid
                ...