java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010648159/article/details/81670281

原因分析

出现这个错误是因为我们还在使用Glide加载图片,但是当前显示图片的view所在的activity却已经被销毁了。

解决办法

一个非常简单的办法就是,使用Glide加载图片的时候,判断传入进来的Context是否已经被销毁(或者直接判断Context是否为空或者直接传入Application,只不过传入Application加载图片会跟随应用的生命周期而终止,这样不太优雅)。

public static void loadCircleImage3(Context context,String imgUrl, ImageView imageView) {
        if (!TextUtils.isEmpty(imgUrl) && context != null && imageView != null && imageView.getContext() != null) {
            Glide.with(context).load(imgUrl).diskCacheStrategy(DiskCacheStrategy.RESULT).transform(new GlideCircleTransform(context)).into(imageView);
        }
    }

猜你喜欢

转载自blog.csdn.net/u010648159/article/details/81670281