使用滑动预加载多张图片
2022-09-01 00:00:27
我们正在尝试将图像预加载到缓存内存中,以便稍后加载它们(图像位于应用程序的Asset文件夹中)
我们尝试了什么:
Glide.with(this)
.load(pictureUri)
.diskCacheStrategy(DiskCacheStrategy.ALL);
Glide.with(this)
.load(picture_uri)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.preload();
问题:只有当我们尝试加载/显示图像时,才会缓存图像:它们必须先加载到内存中,以便它们显示得更快。
Glide.with(this)
.load(picture_uri)
.into(imageView);
我们还尝试使用 GlideModule 来增加 CacheMemory 大小:
public class GlideModule implements com.bumptech.glide.module.GlideModule {
@Override
public void applyOptions(Context context, GlideBuilder
builder.setMemoryCache(new LruResourceCache(100000));
}
@Override
public void registerComponents(Context context, Glide glide) {
}
}
在清单中:
<meta-data android:name=".GlideModule" android:value="GlideModule"/>
到目前为止,没有任何工作。有什么想法吗?
我们尝试使用不可见的 1 dp 图像视图,但结果是相同的:
for(Drawing drawing: getDrawingsForTab(tab)){
Glide.with(this)
.load(drawing.getImage().toUri())
.dontAnimate()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(mPreloadCacheIv);
for(Picture picture : getPictures()){
Glide.with(this)
.load(picture.getPicture().toUri())
.dontAnimate()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(mPreloadCacheIv);
}
}