如何在安卓中显示一条水平不确定进度条? 进度条的动画应该从0开始到100,然后持续地从100返回到0。我不需要圆形的进度条。
我已经知道setIndeterminate
会提供一个无限水平进度条。但它将类似于加载轮,只是它是水平的。如果您看到我的问题,我正在寻找从0开始并一直到100的水平进度条(逐渐增加)。如果要在Android中实现此目标,必须按以下方式使用进度条:
<ProgressBar
android:id="@+id/progress_horizontal"
android:indeterminateOnly="false"
android:indeterminateDrawable="@drawable/progress_indeterminate_horizontal"
android:progressDrawable="@drawable/progress_horizontal"
android:minHeight="24dip"
android:maxHeight="24dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
为了改变进度条的背景,我修改了ProgressDrawable和IndeterminateDrawable。原始的可绘制对象位于frameworks/base/core/res/res/drawable
。将它们复制到您的项目中,并根据您的需要更改颜色。
创建一个线程来更新进度计数并执行Thread.Sleep
。然后,它发送消息给Handler,该Handler将在UI线程中更新进度条。
android:indeterminate="true"
和 style="@style/Widget.AppCompat.ProgressBar.Horizontal"
。 - Panos Grandroid.widget.ProgressBar bar = new android.widget.ProgressBar(context);
bar.setIndeterminate(true);
但是,你可以在开发者文档中很快地找到这个。
http://developer.android.com/reference/android/widget/ProgressBar.html#setIndeterminate%28boolean%29
也许有点晚了,但你可以像这样做:
<ProgressBar
android:id="@+id/progress"
android:layout_width="match_parent"
android:layout_height="10dp"
android:indeterminate="true"
style="?android:attr/progressBarStyleHorizontal" />
希望对某些人有帮助!
在扩展Vinoth的答案上,这是一段准备好的代码:
<ProgressBar
android:id="@+id/progressBarLoadingRecite"
android:indeterminateDrawable="@android:drawable/progress_indeterminate_horizontal"
android:minHeight="24dip"
android:layout_marginTop="20dip"
android:indeterminate="true"
android:maxHeight="24dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
style="@android:style/Widget.ProgressBar.Horizontal"