【发布时间】:2018-12-12 10:00:20
【问题描述】:
我目前正在使用数据绑定实现 RecyclerView,以从 API 获取的 url (/images/slider/my/myImage.jpg) 列表加载图像。
@BindingAdapter("imageUrl")
public static void loadImage(ImageView imageView, String imageUrl){
Picasso.with(imageView.getContext()).load(CommUtils.WEBSITE_LINK + imageUrl).into(imageView);
}
目前我的 ListAdapter 中有上面的代码。当 url 在正确的链接中或存在于服务器中时,该代码能够很好地加载图像,否则它将显示为空白。因此,我想创建一个案例,在显示之前检查图像是否存在/链接是否正确。
我想要实现的是:
if(Image Link exist){
//Load Image, Picasso.with.................
} else {
//Use Dummy Photo, Picasso.with..................
}
[编辑] 所以现在我知道如果路径不存在,我可以使用 error() 函数来创建另一个负载。如果我的 API 将返回两种不同的格式或“url”,这可能是什么情况?带路径 (/images/slider/my/myImage.jpg) 或不带路径 (myImage.jpg) 因此在我的代码中我想做类似的事情
if(websitelink + ImageUrl){ load image }
else(websitelink + path + ImageUrl) { load iamge} //Should this code run under error() from the first case??
我可以先对 ImageUrl 执行 检查,而不是尝试直接加载图像并且仅在出错时更改
【问题讨论】:
-
请删除重复的,它不能解决我的任何问题
标签: android android-imageview picasso