2列の画像ビューを表示するグリッドビューがあります。これらの画像を非同期タスクで読み込んでいます (この記事を参照してくださいListView での画像の遅延読み込み)
しかし、 gridview をスクロールしているとき、位置の画像が混在しています。たとえば、14 番目の画像は 1 番目の画像を示しています。ビューは、非同期タスクが終了する前に古い画像を表示しようとしていると思います。
私のコード:
public Content getItem(int position) {
return contents.get(position);
}
public long getItemId(int position) {
return position;
}
@Override
public boolean hasStableIds() { return true; }
public View getView(int position, View convertView, ViewGroup parent) {
Thumbnail contentView;
Content current = contents.get(position);
if (convertView == null) {
contentView = new Thumbnail(mContext);
}
else {
contentView = (Thumbnail) convertView;
}
contentView.title = current.getTitle();
contentView.image = current.getImage();
contentView.link = current.getLink();
contentView.init();
return contentView;
}
初期化関数
TextView titleText = (TextView)super.findViewById(R.id.titleText);
titleText.setText(title);
ImageView imageControl = (ImageView)super.findViewById(R.id.thumbImage);
DrawableManager loadImage = new DrawableManager(); loadImage.fetchDrawableOnThread(imgUrl, imageControl);
あなたの助けを待っています
ありがとう