【问题标题】:How to display load progress animation for some image?如何显示某些图像的加载进度动画?
【发布时间】:2011-05-19 20:42:14
【问题描述】:

我想在从远程位置加载图像时显示进度条(以旋转圆圈或类似的形式)。

我不希望在屏幕中间显示标准 ProgressBar。我想把它放在 imageView(或包含 ImageView 的布局)的中间。有没有简单的方法可以做到这一点?例如,我是否可以选择将进度条附加到某个视图?

我正在阅读有关 FrameAnimation 的信息。我想我会这样做,但首先我要确保我没有重新发明轮子。

谢谢。

【问题讨论】:

  • 呃。没关系。有一个 ProgressBar 控件,我可以将其放入我的布局中,并根据需要使其可见或消失。

标签: android animation image-processing progress-bar


【解决方案1】:

你的意思是像陀螺一样吗?

是的,您可以这样做:

这里有一个示例代码:

<!--Grey Spinner-->
<ProgressBar
    android:id="@android:id/progress"
    style="?android:attr/progressBarStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
/>
<!--Black Spinner-->
<ProgressBar
    android:id="@android:id/progress"
    style="?android:attr/progressBarStyleSmallInverse"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
/>

这里有一些您可以使用的其他样式属性,只需将上述样式属性替换为其中之一即可,例如style=?android:attr/&lt;one of the attribute from below list&gt;

    progressBarStyleSmallTitle
    progressBarStyleLarge
    progressBarStyleLargeInverse
    progressBarStyleHorizontal
    progressBarStyleSmallTitle

您还必须注意,如果您从互联网下载图像,请不要使用 UIThread。您还可以在标题栏中添加进度条。

使用以下代码将微调器添加到标题栏(在 onCreate() 中调用请求..):

requestWindowFeature(Window.FEATURE_PROGRESS);
//calling setContentView() after requesting
setContentView(R.layout.main);
setProgressBarVisibility(true);
//call setProgressBarVisibility(false); to turn it off

希望这会有所帮助。 干杯!

【讨论】:

    【解决方案2】:

    您可以将 ProgressBar 附加到 ImageView 布局支架中,

    相对布局 -> 图像视图 ->进度条

    然后您可以将布局对齐参数设置为进度条以将其显示在您想要的位置。

    您可以在 xml 布局中执行此操作,然后以编程方式进行膨胀,因此,当您开始/停止图像下载过程时,您可以设置 ProgressBar 可见性打开/关闭

    【讨论】:

    • 我也在找同样的功能,能否提供示例代码?
    猜你喜欢
    • 2012-11-12
    • 2015-09-30
    • 1970-01-01
    • 2010-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-28
    • 1970-01-01
    相关资源
    最近更新 更多