Android 滑动不从文件路径加载图像
我在使用glide加载图像时遇到问题。当我尝试使用Android DefaultAndroid 滑动不从文件路径加载图像,android,image,imageview,android-glide,Android,Image,Imageview,Android Glide,我在使用glide加载图像时遇到问题。当我尝试使用Android DefaultsetImageBitmap(位图)加载图像时,我尝试在从gallery中拾取图像后加载图像它工作了,但我面临内存泄漏问题 然后我尝试了Glide图像加载程序来避免内存泄漏问题。但我无法使用文件路径加载图像 Glide.with(_A) .load(new File(uri.getPath())) .asBitmap
setImageBitmap(位图)加载图像时,我尝试在从gallery中拾取图像后加载图像代码>它工作了,但我面临内存泄漏问题
然后我尝试了Glide图像加载程序来避免内存泄漏问题。但我无法使用文件路径加载图像
Glide.with(_A)
.load(new File(uri.getPath()))
.asBitmap()
.override(w, w)
.centerCrop()
.placeholder(R.drawable.diploma)
.diskCacheStrategy(DiskCacheStrategy.SOURCE).into(imageView);
我还尝试加载Uri,但也不起作用
然后我尝试从URL Glide加载的URL图像加载图像。这非常有效
Glide
.with(_A)
.load("https://yt3.ggpht.com/-v0soe-ievYE/AAAAAAAAAAI/AAAAAAAAAAA/OixOH_h84Po/s900-c-k-no-mo-rj-c0xffffff/photo.jpg")
.asBitmap()
.override(w, w)
.centerCrop()
.placeholder(R.drawable.diploma)
.diskCacheStrategy(DiskCacheStrategy.SOURCE).into(imageView);
然后我尝试使用默认函数从Uri加载图像
imageView.setImageURI(uri)代码>此函数已加载图像
Uri没有问题,那为什么我不能加载图像呢
有人能帮我找到解决此问题的方法吗?如前所述,以下是将图像保存在特定路径的代码,以及如何检索图像。另外,我正在使用Realm来保存图像的路径,您可以使用其他任何东西。以下是保存图像的代码:
private void saveToInternalStorage(Bitmap bitmapImage, final String fileName) {
ContextWrapper cw = new ContextWrapper(getContext());
directory = cw.getDir("myloImages", Context.MODE_PRIVATE);
if (!directory.exists()) {
directory.mkdir();
}
mypath = new File(directory, fileName + ".png");
FileOutputStream fos = null;
try {
fos = new FileOutputStream(mypath);
bitmapImage.compress(Bitmap.CompressFormat.PNG, 100, fos);
fos.close();
Log.v("IMAGE PATH", mypath.getAbsolutePath());
} catch (Exception e) {
Log.e("SAVE_IMAGE", e.getMessage(), e);
}
realm.executeTransactionAsync(new Realm.Transaction() {
@Override
public void execute(Realm realm) {
PhotosRealm photosRealm = new PhotosRealm();
photosRealm.setImageLocation(directory.getAbsolutePath() + "/" + fileName + ".png");
realm.copyToRealm(photosRealm);
// I'm using realm to save location.
}
});
finish();
}
现在从该位置检索图像。它与您的代码相同:
private RealmResults<PhotosRealm> list;
Glide.with(context).load(list.get(0).getImageLocation()).asBitmap().into(imageView);
private RealmResults列表;
Glide.with(context).load(list.get(0.getImageLocation()).asBitmap().into(imageView);
您的代码看起来不错。检查您的路径是否正确。代码使用的是“load”,请在日志中尝试并检查路径是否正确。我已经检查了Uri这是一个有价值的路径,并且我尝试使用此函数imageView.setImageURI(Uri)直接加载Uri;图像已加载。是否在Logcat中显示某些内容?还可以使用此代码获取路径“file.getAbsolutePath()”“源代码与字节码不匹配”这是我在Glide中使用文件时得到的结果。我尝试了这个答案,但问题不清楚我应该发布一个关于如何在特定路径保存图像然后检索图像的答案吗?我今晚会检查它并让您知道,非常感谢:)