您无法为已销毁的活动启动加载Glide
问题描述:
MainActivity的加载GIF的代码如下,应用程序在重新启动活动后出现加载gif的崩溃。在ImageView的您无法为已销毁的活动启动加载Glide
ImageView imageViewGIF = navigationView.findViewById(R.id.imageViewGIF);
Glide.with(this).asGif().load(R.drawable.gift_3).into(imageViewGIF);
加载GIF使用滑行
,但是当我重新启动应用程序由于使用
Intent intent = new Intent(context, SplashActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
应用得到一个崩溃下面记录一些要求。
FATAL EXCEPTION: main
Process: com.apppackage, PID: 19360
java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity
at android_support.qc.b(RequestManagerRetriever.java:298)
at android_support.qc.a(RequestManagerRetriever.java:123)
at android_support.ji.a(Glide.java:589)
我用'com.github.bumptech.glide:glide:4.2.0'
谁能帮我解决这个问题。
答
这是Glide库中的问题。您可以在加载Glide之前检查上下文是否为null,或者您可以使用应用程序上下文来实现此目的。
Glide.with(getApplicationContext())
.load(imageUrlToLoad)
.into(ImageView);
你在哪里使用/下载Glide?内部片段,活动或客户视图? –
@AshishTiwari在'onCreate()'的活动里面 –