在我的Android应用程序中,我有4个网址用于单个图像。检查url 1是否已损坏然后转到url 2并以相同的方式直到结束。 我使用 Glide 4.3.1 来加载图像:
private int checkAndShow4Image(Context context, View view, int img_id, String img_url) {
try {
GlideApp
.with(context)
.load(img_url)
.diskCacheStrategy(DiskCacheStrategy.DATA)
.error(R.drawable.ic_broken_image)
.fallback(R.drawable.ic_broken_image)
.transition(DrawableTransitionOptions.withCrossFade())
.into((ImageView) view.findViewById(img_id));
} catch (Exception e) {
e.printStackTrace();
return -1;
}
return 0;
}
该方法在完成加载之前返回。等待的最佳方式是什么?
答案 0 :(得分:3)
Glide使用异步方式显示图像,尝试使用回调来了解图像何时完成或失败:
.listener(new RequestListener<Drawable>() {
@Override
public boolean onLoadFailed(@android.support.annotation.Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
return false;
}
@Override
public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
return false;
}
}
)
.into(view);