小编Sau*_*ava的帖子

如何在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"
            />
Run Code Online (Sandbox Code Playgroud)

为此,在drawable"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>
Run Code Online (Sandbox Code Playgroud)

现在,第一个灰色环很好.然而,蓝色环从drawable的左侧开始向右移动,就像线性进度条的工作原理一样.这是它显示50%进度的方式,红色箭头显示方向.

在此输入图像描述

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

android progress-bar

135
推荐指数
9
解决办法
20万
查看次数

标签 统计

android ×1

progress-bar ×1