ListView图像随机

时间:2012-12-04 15:24:06

标签: android android-listview android-imageview

我有一个带有项目的列表视图。滚动时,图像会随机出现。 我不知道为什么...... 有适配器:

package com.forel.dbc;
[...]

public class AgendaAdapter extends BaseAdapter {

private List<Data> items; //Le contenu
private LayoutInflater inflater;
private Context context;     
private SmartImageView myImage;

public AgendaAdapter(Context context, List<Data> items, DownloaderImageViewCache imageCache, boolean invertTextColor) {

    this.items = items;
    this.context = context;
    this.imageCache = imageCache; 
    inflater = (LayoutInflater)this.context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

}

[...]
public View getView(int position, View convertView, ViewGroup parent) {

    if(convertView == null) {
        convertView = inflater.inflate(R.layout.agenda_list_item, parent, false);

    }
    final Data event = (Data) getItem(position);
    if (event.getTitle() != null)
        ((TextView) convertView.findViewById(R.id.eventName)).setText(event.getTitle());
    if (event.getDesc() != null)
        ((TextView) convertView.findViewById(R.id.desc)).setText(event.getDesc());

    ((SmartImageView) convertView.findViewById(R.id.my_image)).setImageUrl(event.getPicture()); // getPicture return imageUrl, 

    return convertView;
}}

图像随机出现在列表中

如果有人有想法......

谢谢!

2 个答案:

答案 0 :(得分:2)

假设这些图像是通过网络连接加载的,我是否正确?如果是这样可以解释您的问题,就像您正在设置图像一样,后者又会启动后台进度以获取图像。

您有可能在列表中移动,导致刷新,因此图像被加载到不正确的ImageView中。

答案 1 :(得分:0)

下载后设置图像时,应确保与此视图关联的数据同时没有更改。