gpt4 book ai didi

android - Glide - 在尝试加载照片时回退或错误后调用方法

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:56:59 26 4
gpt4 key购买 nike

Glide - 在尝试加载照片时回退或出错后调用方法。

嗨!

有什么方法可以检查 Glide 是否从链接加载照片或在链接无效或照片时使用 fallback/error不可用?

我的意思是,我想在 Glide 不加载照片时调用一个方法(加载其他照片)。

这是我的 Glide 例如:

Glide
.with(mActivity)
.load(news.getPagemap().getCseThumbnail().get(0).getSrc())
.fallback(R.drawable.bg_gradient)
.error(R.drawable.bg_gradient)
.centerCrop()
.crossFade()
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.into(holder.photo);

我试图比较ConstantValues - holder.photo.getDrawable().getConstantState().equals(mActivity.getResources().getDrawable(R.drawable.bg_gradient).getConstantState( )) 但是遇到了 NullPointerException

最佳答案

这对我有帮助:

private void loadPicture(final ViewHolder holder, String photoUrl, final Boolean shouldLoadAgain) {
holder.progressBar.setVisibility(View.VISIBLE);

Glide
.with(mActivity)
.load(photoUrl)
.fallback(R.drawable.bg_gradient)
.error(R.drawable.bg_gradient)
.centerCrop()
.crossFade()
.listener(new RequestListener<String, GlideDrawable>() {
@Override
public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
holder.progressBar.setVisibility(View.GONE);
if (shouldLoadAgain)
loadPicture(holder, mPhotoUrl, false);
return false;
}

@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
holder.progressBar.setVisibility(View.GONE);
return false;
}
})
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.into(holder.photo);
}

关于android - Glide - 在尝试加载照片时回退或错误后调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38250802/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com