猿问

如何在可以旋转的Android中创建圆形进度条?

我正在尝试创建一个圆形的进度栏。这就是我要实现的


有一个灰色背景环。在其顶部,将显示蓝色进度条,该进度条将在60或任何秒数内从0到360循环移动。

这是我的示例代码。


<ProgressBar

            android:id="@+id/ProgressBar"

            android:layout_width="match_parent"

            android:layout_height="match_parent"

            style="?android:attr/progressBarStyleLarge"

            android:indeterminateDrawable="@drawable/progressBarBG"

            android:progress="50"

            />

为此,在可绘制的“ progressBarBG”中,我创建了一个图层列表,并在该图层列表内给出了两个项目,如图所示。


<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<item android:id="@android:id/background">

    <shape

            android:shape="ring"

            android:innerRadius="64dp"

            android:thickness="8dp"

            android:useLevel="false">


        <solid android:color="@color/grey" />

    </shape>

</item>


<item android:id="@android:id/progress">

    <clip>

        <shape

                android:shape="ring"

                android:innerRadius="64dp"

                android:thickness="8dp"

                android:useLevel="false">


            <solid android:color="@color/blue" />

        </shape>

    </clip>

</item>

现在,第一个灰色环生成良好。但是,蓝色环从可绘制对象的左侧开始,并向右移动,就像线性进度条的工作方式一样。这就是它以50%的进度显示的方式,红色箭头显示了方向。

http://img1.mukewang.com/5daff8750001f9bb02530253.jpg

我想按预期方式在圆形路径中移动蓝色进度条。



萧十郎
浏览 1666回答 3
3回答
随时随地看视频慕课网APP

相关分类

Android
我要回答