Android:Progress Bar作为占位符

Nic*_*ick 1 android progress-bar

我希望在我的图像被提取时弄清楚如何使用进度条微调器作为占位符.我把一个动画.gif放进去,但很快我发现.gif不能和android一起玩.这是我现在的代码:

public void displayImage(String url, CarActivity activity, ImageView imageView) {
        if(imageMap.containsKey(url))
            imageView.setImageBitmap(imageMap.get(url));
        else {
            queueImage(url, activity, imageView);
            imageView.setImageResource(R.drawable.loading);

        }
    }
Run Code Online (Sandbox Code Playgroud)

而不是将图像设置为我的loading.gif如何使用内置微调器作为占位符并可能将其覆盖在另一个图像上.

谢谢!

mah*_*mah 5

您真正的问题是"如何将一个视图置于另一个视图之上".在你的情况下,你似乎想要在后面有一个ImageView,在前面有一个ProgressBar.(ProgressBar名称有点不直观,因为默认情况下它不是一个条形图,它是一个小旋转动画).

在您当前拥有ImageView的布局中,创建一个RelativeLayout.在RelativeLayout中,首先放置ImageView,然后放置ProgressBar.设置ProgressBar的android:visibility属性="不可见",当你希望它被看到时,在代码中设置它:view.setVisibility(View.VISIBLE); (或.不可见).

将RelativeLayout的大小设置为wrap_content,并对ImageView执行相同操作.对于ProgressBar,您可能希望硬编码小尺寸,例如40dip宽度和高度.如果希望ProgressBar的布局参数位于图像中间,请将其设置为"centerInParent".