简单适配器无法加载所有图像

时间:2014-05-07 16:08:03

标签: java android

我使用此代码在列表视图中显示来自url的图片,因此我使用从simpleAdapter扩展的此类

    package com.mypackage.lebadagency;


import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;
import java.util.Map;

import com.koushikdutta.urlimageviewhelper.UrlImageViewHelper;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.widget.ImageView;
import android.widget.SimpleAdapter;

public class MyAdapter extends SimpleAdapter {

public MyAdapter(Context context, List<? extends Map<String, ?>> data,
        int resource, String[] from, int[] to) {
    super(context, data, resource, from, to);
    // TODO Auto-generated constructor stub
}
@Override
public void setViewImage(ImageView v, String value) {
    UrlImageViewHelper.setUrlDrawable(v, value);   
}

}

并使用它就像:

@Override
        protected void onPostExecute(Void result) {
            super.onPostExecute(result);
            // Dismiss the progress dialog
            if (pDialog.isShowing())
                pDialog.dismiss();
            /**
             * Updating parsed JSON data into ListView
             * */
            ListAdapter adapter = new MyAdapter(
                    EconomyPanel.this, contactList,
                    R.layout.economy_list_item, new String[] {TAG_ID, TAG_IMAGE_URL,TAG_NAME 
                     }, new int[] {R.id.idTV, R.id.image1,
                    R.id.name });
            setListAdapter(adapter);


        }

我的列表加载了10个项目,我的问题是它没有加载所有10个图像,有时它只加载其中一个,问题是什么以及如何修复它?

2 个答案:

答案 0 :(得分:0)

你有这个问题我用毕加索库解决了我在以下链接检查我的答案希望它对你有用

Here it is

答案 1 :(得分:0)

问题不在于此代码,此代码无需更改查看图像的方法或任何问题比这更简单的问题,任何在其文件名中包含空间gab的图像,浏览器都可以处理它通过用%20替换空格,并且当android检索图像url时,它检索它而没有20%符号,所以我需要将此命令添加到url:

value=value.replaceAll(" ", "%20");

然后

UrlImageViewHelper.setUrlDrawable(v, value);