关于Pictureselector相册全白、不显示图片的问题
文末附GlideEngine代码
前些日子要做一个用到相机相册剪裁照片的项目,用了网上比较火比较新的Pictureselector,发现相册能识别并且打开,但是整个相册预览都是空白的,点击预览也是一片黑



解决方法:在初始化的过程中缺少了一样设置,这项可能是因为已经被移除的原因,各大博主的分享中并没有看见这一行
PictureSelector.create(this).loadImageEngine(GlideEngine.createGlideEngine())
这一行添加进初始化方法中,图像就能正常显示与预览
public void photoAndCamera(){
PictureSelector.create(this)
.openGallery(PictureMimeType.ofImage())
.theme(R.style.picture_default_style)
.loadImageEngine(GlideEngine.createGlideEngine())
.forResult(PictureConfig.CHOOSE_REQUEST);
}


单纯分享解决方法,不讨论其安全性和方法被移除的原因,也请大佬指教更好更安全的方法
附:所需的GlideEngine代码(ImageEngine来自pictureselector轮子)
前置依赖
implementation 'com.github.LuckSiege.PictureSelector:picture_library:v2.5.9'
implementation "com.github.bumptech.glide:glide:4.11.0"
public class GlideEngine implements ImageEngine {
/**
* 加载图片
*
* @param context
* @param url
* @param imageView
*/
@Override
public void loadImage(@NonNull Context context, @NonNull String url, @NonNull ImageView imageView) {
Glide.with(context)
.load(url)
.into(imageView);
}
/**
* 加载网络图片适配长图方案
* # 注意:此方法只有加载网络图片才会回调
*
* @param context
* @param url
* @param imageView
* @param longImageView
* @param callback 网络图片加载回调监听 {link after version 2.5.1 Please use the #OnImageCompleteCallback#}
*/
@Override
public void loadImage(@NonNull Context context, @NonNull String url,
@NonNull ImageView imageView,
SubsamplingScaleImageView longImageView, OnImageCompleteCallback callback) {
Glide.with(context)
.asBitmap()
.load(url)

本文介绍使用PictureSelector时遇到的相册预览全白问题及其解决方案。通过正确配置GlideEngine实例,确保图片正常加载与预览。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



