0

我正在使用 AndroidQuery 处理图像的方式保存然后保存到 sd 卡。但是由于某种原因没有显示对话框。图像已正确保存在 sd 卡中,只有对话框是问题所在。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="100dip" 
    >

    <ProgressBar                
        android:layout_width="15dip"       
        android:layout_height="15dip"
        android:id="@+id/progress" 
        android:layout_centerInParent="true"
        />

    <ImageView
        android:id="@+id/image"       
        android:layout_width="fill_parent"       
        android:layout_height="75dip"
        />

</RelativeLayout>

代码:

String url = path;
File ext = Environment.getExternalStorageDirectory();
File target = new File(ext, "Folder/Folder/" + pathName + ".jpg");

laQuery.progress(R.id.progress).download(url, target, new AjaxCallback<File>() {

    public void callback(String url, File file, AjaxStatus status) {

        if (file != null) {

            // Log.d("File:" + file.length() + ":" + file, status);
            Log.i("Aquery not null", "File:" + file.length());
            Log.i("Aquery not null", "File:" + file);
            Log.i("Aquery not null", "File:" + status);
        } else {
            Log.d("Failed", "" + status);
        }
    }

});
4

1 回答 1

3

RelativeLayout子项是按照声明它们的顺序绘制的。所以你ProgressBar在下面ImageView并且 Android Query 没有引用ImageView来控制它的可见性。

切换它们的声明顺序,使进度条位于顶部。


更新:检查download()请求不支持进度条,只有image()请求支持。您必须将进度条设置为自己可见并将其隐藏在callback().

于 2013-09-16T09:30:26.600 回答