0

我正在尝试使用来自互联网的异步任务加载图像。问题是图像不会更新。代码:

    public View getView(int position, View convertView, ViewGroup parent) {
        ImageView i ;
        i = new ImageView(this.mContext);
        AsycTask task =  new AsycTask();
        task.url = new URL(mImageIds.get(position));
        task.iv = i;
        task.execute(i);
    return i;
     }

     public class AsycTask extends AsyncTask<ImageView, Void, Bitmap>{
        public Bitmap bm2;
        public ImageView iv;
        public URL url;
        @Override
        protected Bitmap doInBackground(ImageView... arg0) {
            iv = arg0[0];
            try {
                bm2 = BitmapFactory.decodeStream((InputStream)url.getContent());

                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                return bm2;
        }

        @Override
        protected void onPostExecute(Bitmap result) {
             // iv.setImageResource(R.drawable.sw10)
             iv.setVisibility(View.VISIBLE);
             iv.setBackgroundResource(R.drawable.search);
             iv.setScaleType(ImageView.ScaleType.FIT_XY);
             iv.setImageBitmap(result);
        }

        @Override
        protected void onPreExecute() {
        }

        @Override
        protected void onProgressUpdate(Void... values) {
        }
}

为什么设置位图后图像没有更新?我正在使用异步任务来更新我的图像,这可能吗?

4

1 回答 1

0

尝试使用 UnivsersalImageLoader 库,这将简化您的开发。您的图像加载代码将是下一个:

ImageLoader.getInstance().displayImage(imageUrl, imageView); // Default options will be used

通用图像加载器

于 2013-06-17T11:41:37.027 回答