android listview在图像更新后仍然使用缓存中的图像

android listview在图像更新后仍然使用缓存中的图像,android,listview,Android,Listview,在我的listview中,我有可以从internet更新的图像和文本。图像保存在外部存储器中。当更新发生时,文本显示正确,但图像仍然是缓存中的旧图像。更新时,我删除旧图像并创建同名的新图像。但除非im清除应用缓存,否则listview将显示旧图像。我怎样才能解决这个问题? 我还尝试以编程方式清除缓存,但这会导致一些其他问题 在执行后,我尝试调用MyListView.getMdataAdapter().notifyDataSetChanged()但是它没有帮助 @Override public V

在我的listview中,我有可以从internet更新的图像和文本。图像保存在外部存储器中。当更新发生时,文本显示正确,但图像仍然是缓存中的旧图像。更新时,我删除旧图像并创建同名的新图像。但除非im清除应用缓存,否则listview将显示旧图像。我怎样才能解决这个问题? 我还尝试以编程方式清除缓存,但这会导致一些其他问题

在执行后,我尝试调用
MyListView.getMdataAdapter().notifyDataSetChanged()但是它没有帮助

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    // TODO Auto-generated method stub
    View view = convertView;

    final ViewHolder holder;
    Items2 i = items.get(position);
    if(convertView==null){
        holder = new ViewHolder();
        view = inflater.inflate(R.layout.list_row, parent, false);
        holder.text = (TextView)view.findViewById(R.id.tvRestList);
        holder.image = (ImageView)view.findViewById(R.id.imgList);

        view.setTag(holder);
        view.setOnTouchListener(this);
    }else{
        holder = (ViewHolder)view.getTag();
    }
    holder.pos = position;
    Items2 item = (Items2)i;
    holder.text.setText(item.name);

    imageLoader.displayImage("file:///"+context.getExternalFilesDir(null).toString()+File.separator+String.valueOf(position)+".jpg", holder.image, options);

    return view;
}

ImageLoader是通用图像加载器。

您能显示适配器代码吗?找到发生这种情况的原因,默认情况下ImageLoader在内存中缓存图像,因此更新必须清除ImageLoader的内存缓存