如何使用Java更改Android中进度键的速度?

发布于 2025-02-10 10:19:45 字数 651 浏览 2 评论 0原文

我有一个 progressbar (圆形形状),它旋转非常快,如何将其更改为以较慢的速度旋转?

(它无限期地运行)


这是我的XML Progressbar:

<ProgressBar
        android:id="@+id/progressBar"
        style="@style/Widget.AppCompat.ProgressBar"
        android:layout_width="409dp"
        android:layout_height="710dp"
        android:indeterminate="false"
        android:padding="36dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

I have a ProgressBar (the round shape one) and it spins very fast, how do I change it to spin at a slower speed?

(It is running indefinitely)


Here is my XML of ProgressBar:

<ProgressBar
        android:id="@+id/progressBar"
        style="@style/Widget.AppCompat.ProgressBar"
        android:layout_width="409dp"
        android:layout_height="710dp"
        android:indeterminate="false"
        android:padding="36dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

睫毛上残留的泪 2025-02-17 10:19:45

在/可绘制路径下添加.xml文件,例如:drawable/coundular_spinner.xml
CINCULAL_SPINNER:

<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:drawable="@drawable/spinner"
    android:interpolator="@android:anim/linear_interpolator"
    android:fromDegrees="0"
    android:pivotX="50%"
    android:pivotY="50%"
    android:repeatCount="infinite"
    android:toDegrees="3600"
    android:duration="1000"/>

更改Todegrees持续时间以控制旋转速度。然后在您的progressbar布局中调用它。

<ProgressBar
        android:id="@+id/progressBar"
        style="@style/Widget.AppCompat.ProgressBar"
        android:layout_width="409dp"
        android:layout_height="710dp"
        android:indeterminate="false"
        android:padding="36dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        android:indeterminateDrawable="@drawable/circular_spinner"
        app:layout_constraintTop_toTopOf="parent"/>

Add a .xml file under /drawable path, like: drawable/circular_spinner.xml
circular_spinner:

<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:drawable="@drawable/spinner"
    android:interpolator="@android:anim/linear_interpolator"
    android:fromDegrees="0"
    android:pivotX="50%"
    android:pivotY="50%"
    android:repeatCount="infinite"
    android:toDegrees="3600"
    android:duration="1000"/>

Change the toDegrees and duration to control the speed of the spinning. Then call it in your progressbar layout.

<ProgressBar
        android:id="@+id/progressBar"
        style="@style/Widget.AppCompat.ProgressBar"
        android:layout_width="409dp"
        android:layout_height="710dp"
        android:indeterminate="false"
        android:padding="36dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        android:indeterminateDrawable="@drawable/circular_spinner"
        app:layout_constraintTop_toTopOf="parent"/>
时光与爱终年不遇 2025-02-17 10:19:45

另请参见更改Android中的progressbar fps

<ProgressBar
    android:indeterminateDuration="1000"

旧答案持续时间=“ 1000”/&gt;现在不起作用。

See also change ProgressBar fps in Android:

<ProgressBar
    android:indeterminateDuration="1000"

Old answer <rotate android:duration="1000"/> doesn't work now.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文