Android 为什么使用View.getContext()不流行?

Android 为什么使用View.getContext()不流行?,android,image,asynchronous,android-lifecycle,android-glide,Android,Image,Asynchronous,Android Lifecycle,Android Glide,我正面临一个与Glide有关的问题 You cannot start a load for a destroyed activity 我没有看到这个崩溃我只是报告了这一情况,然后我检查了我的代码,我看到我写了: public static void setImageWithGlide(Context context, String imageUrl, ImageView imageView) { if (context != null && imageView != n

我正面临一个与Glide有关的问题

You cannot start a load for a destroyed activity
我没有看到这个崩溃我只是报告了这一情况,然后我检查了我的代码,我看到我写了:

public static void setImageWithGlide(Context context, String imageUrl, ImageView imageView) {
    if (context != null && imageView != null)
        Glide.with(context).load(imageUrl)
                .dontAnimate().into(imageView);
}
所以,我读了一些书,看到人们正在使用

1-
上下文
,就像我做的那样

2-“应用程序上下文”,由于许多原因,这根本不是一个好主意

3-从
视图
本身获取上下文,因此在我的情况下,它将变成:

public static void setImageWithGlide(String imageUrl, ImageView imageView) {
    if (imageView != null && imageView.getContext() != null)
        Glide.with(imageView.getContext()).load(imageUrl)
                .dontAnimate().into(imageView);
}
我不知道这是否能解决问题,但为什么这种获取上下文的方式不受欢迎呢?不使用它的原因是什么?它还为我保存了传递给方法的上下文(这对我个人来说不是很好,因为我很想知道这个方法使用的是上下文,我在传递它时就知道了)

所以

一,。什么时候是从视图中获取
上下文的正确案例和错误案例?
2.你认为有更好的方法来解决这个问题吗

顺便说一句,我不认为用户看到这一崩溃可能是在Glide内部处理的。

根据这一点: 建议对glide使用当前活动上下文,并查看。getContext()返回活动的上下文(可能大多数情况下)。因此,只需根据以下内容轻松地将其用于滑翔


建议对glide使用当前活动上下文,并查看。getContext()返回活动的上下文(可能大多数情况下)。因此,只需简单地将其用于glide

如果您因活动被终止而面临此问题,则任何getContext也将不起作用您有何建议?如果您因活动终止而面临此问题,则任何getContext也将不起作用您有何建议?