我正在使用GET方法从服务器接收一些JSON数据。下面给出了一个jsonObject:
{
"ID": "576",
"id": "c1b6d2d0d946504d09a471e05d3907c9",
"name": "Harminder Singh",
"last_logged": "1429535277",
"url": "common/marvel/photos/2015/04/fd64s_161_bd4c9ab730f5513206b999ec0d90d1fb",
"extension": "jpg",
"current_status": "icon-offline prople-offline",
"room_id": "a7aeed74714116f3b292a982238f83d2",
"current_user": false
}
我在这里获取图片网址。使用api端点网址和扩展程序我得到绝对网址。
String absoluteURL = api + "/" + url + "." + extension;
我正在使用这个absoluteURL使用Picasso库在imageview中加载图像。现在我的问题是,在某些网址存在图像,而某些不存在.SO我将一些图像视图视为空白。如何验证来自收到图像存在与否的URL?
答案 0 :(得分:2)
你真的不能。但您可以使用占位符,甚至是加载图像。您可能会发现this blog post有用
答案 1 :(得分:0)
没有直接的方法可以做到这一点,但你可以做的是,覆盖onimageLoadFailed()方法。在加载失败时,你可以做任何你想做的事。
Picasso.Builder builder = new Picasso.Builder(this);
builder.listener(new Picasso.Listener(){
@Override
public void onImageLoadFailed(Picasso picasso, Uri uri, Exception exception){
// your stuff
}
});
builder.build().load(URL).into(imageView);
或者,如果你有一些默认的drawable,每次获取时都会出现错误,你可以添加
.error(R.mipmap.some_drawable)