3

我需要制作一个圆形进度条,仅在接收数据时旋转。我在布局中写道:

        <ProgressBar
            android:id="@+id/progress_bar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:indeterminateOnly="true"
            style="?android:attr/progressBarStyleSmall"
            />

然后收到部分数据,我做

mProgressBar.incrementProgressBy(10);

我认为最初 mProgressBar 应该停止,但它正在永久旋转,甚至没有建立连接!

我应该怎么做才能使 ProgressBar 在收到另一部分数据时最初停止并旋转?

4

4 回答 4

5

没有办法停止不确定的进度条。您要么必须创建自己的自定义进度条,要么可以使用不确定的可绘制对象做一些小技巧。

您可以在进度条上放置一个图像视图并在其中设置相同的可绘制对象。

当您想停止动画时,隐藏进度条并显示图像视图。

当您想开始动画时,隐藏图像视图并显示进度条。

它应该给你同样的效果。

于 2012-08-14T10:04:24.643 回答
1

使用visiblegone用于布局中的可见性。

于 2012-08-14T09:40:47.317 回答
0

抱歉,您无法通过不确定的进度条实现这一目标。该控件用于显示正在后台执行某些操作。没有指示此操作何时开始或何时完成。

因此,您要么必须用户确定进度条,要么创建自己的自定义组件

于 2012-08-14T09:35:58.130 回答
0

完成工作后拨打此电话。

 mProgressBar.dismiss();
于 2012-08-14T09:35:20.790 回答