在我的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;
}
滚动浏览库时,每次滚动浏览时缩略图都会刷新,再次滚动浏览时会刷新。对用户来说不是很舒服。我想将图像保存到内存中并快速加载。
有可能吗?
答案 0 :(得分:0)
我在UIL中添加了一些其他的参数:
.imageScaleType(ImageScaleType.EXACTLY)
.bitmapConfig(Config.RGB_565)
和
.memoryCacheSizePercentage(50)
来自config,看起来不错。