滚动时刷新GridView缩略图

时间:2015-04-15 10:24:27

标签: android android-listview android-arrayadapter android-gridview universal-image-loader

在我的Android应用中,我使用Universal Image Loader库来显示GridView中SD卡的照片。我还设置了cacheInMemory(true)(就像这里:UIL)。

用于显示我使用带有ViewHolder模式的ArrayAdapter的图片。

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    View row = convertView;
    ViewHolder holder = null;

    File item = data.get(position);

    if (row == null) {
        holder = new ViewHolder();

        row = mInflater.inflate(layoutResourceId, null);

        holder.image = (ImageView) row.findViewById(R.id.picture);

        row.setTag(holder);
    } else {
        holder = (ViewHolder) row.getTag();
    }

    if (item.isFile()) {
      String uri = Uri.fromFile(f).toString();
      String decodedUri = Uri.decode(uri);

      Globals.ImageLoader.displayImage(decodedUri, holder.image);
    }

    return row;
}

滚动浏览库时,每次滚动浏览时缩略图都会刷新,再次滚动浏览时会刷新。对用户来说不是很舒服。我想将图像保存到内存中并快速加载。

有可能吗?

1 个答案:

答案 0 :(得分:0)

我在UIL中添加了一些其他的参数:

.imageScaleType(ImageScaleType.EXACTLY)

.bitmapConfig(Config.RGB_565)

.memoryCacheSizePercentage(50)

来自config,看起来不错。