我正在尝试创建一个圆形的进度条.这就是我想要实现的目标
有一个灰色背景环.在它的顶部,出现一个蓝色进度条,它在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%进度的方式,红色箭头显示方向.

我想按预期在圆形路径中移动蓝色进度条.
我无法阻止ProgressBar.它的风格是ProgressBarStylesmall.如何启动和停止循环,小ProgressBar?
我想在加载数据时在我的应用中显示进度圈.我有一个活动,从一个活动转移到另一个活动我正在解析一些xml数据,所以暂时解析完成后我想显示一个循环加载效果.
我有一个定制的圆形进度条用于时钟上的秒计数器,我想翻转,以便时钟逆时针计数.
在这里搜索解决方案,我发现了这个:
这显然适用于水平进度条,但我不能简单地将其旋转180度,因为这只会将时钟移动180度,它仍然会顺时针旋转.
有没有其他方法可以镜像ProgressBar或任何View?
编辑:
刚刚找到"android:rotationY"和程序化的等价物,但这理想情况下需要为2.2及以上..
我正在尝试放置一个循环进度条,最初以不确定模式启动它,一旦下载开始并且进度可用,就将其转换为确定模式并设置其进度.使用样式progressBarStyleHorizontal时,代码工作正常,一旦我将其更改为progressBarStyleInverse设置,进度无效.进度条开始不确定并持续不变.
让我感到惊讶的是设置android:xml中的indeterminate = false也没有效果.
这是xml中进度条的声明
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:indeterminate="false"
android:layout_gravity = "center"
android:layout_height="wrap_content"
android:layout_width="wrap_content"/>
Run Code Online (Sandbox Code Playgroud)
这是我更新进度条进度的方法.显然我有一个id我已经在xml粘贴中删除了它.我有使用findViewById的进度条的参考.(如果您认为这是问题,参考进度条不是问题)
holder.progressbar.setIndeterminate(false);
holder.progressbar.invalidate();
holder.progressbar.setProgress(/*value */);
Run Code Online (Sandbox Code Playgroud)
我犯了什么错误?请帮忙.我在这个问题上浪费了近5个小时.请帮忙.
提前致谢.