我可以在此代码中使用Glide将图像路径加载到imageView:
GlideApp.with(context)
.load(imagePath)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.transition(withCrossFade())
.into(imageView);
我不想从imageView 加载以前注册过的相同路径或位图。
============== UPDATE =================
我找到了这个解决方案(感谢ADM):
Glide自动执行setTag()
功能,当我调用imageView.getTag()
函数时,结果导出已加载数据的SingleRequest
(imagePath或位图)。
但是我无法访问singleRequest model
字段,它是私有的。如何获取singleRequest model
字段?请帮帮我。
答案 0 :(得分:1)
如上所述,您应使用country code
标记网址。
这里view.setTag()
将对象作为参数。每当我们打电话setTag(Object object)
时,我们都需要施展它。下面就是一个例子。
getTag()
原因Argument是一个Object,因此您也可以将类对象添加为标记。
view.setTag("htttp://www.imgur.3877383.jpg");
String url =(String)view.getTag();
if(url!=null){
// Use the url
}
我也不知道使用这个。但是如果您正在使用List(ListView或RecyclerView等),那么您可以按位置直接访问随视图附加的数据集。
答案 1 :(得分:0)
你不能采取"图像路径"通过使用Glide或任何其他库从imageView,可以在imageView中设置图像位图或背景,以便您可以从imageview获取位图,但是您无法从imageview获取imagepath。 如果你想记住图像路径,你将在imageview中作为位图应用,你可以通过将图像路径添加到arraylist并在需要时使用它来实现它
试试这段代码:
Glide.with(this).load(Uri.parse(resultUri)).asBitmap().into(new SimpleTarget<Bitmap>() {
@Override
public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {
if (resource != null) {
myTouchView1.setImageBitmap(resource);
}
}
});
答案 2 :(得分:-2)
你应该阅读:
图像路径类似于:
String asseturl = "file:///android_asset/demo1.jpg";
Glide.with(context).load(asserturl)....