如何在Glide中向GenericRequestBuilder添加交叉淡化动画

Kor*_*oly 2 java android android-glide

我用这个构建器加载图像

Glide.with(ctx)
    .using(new FileModelLoader(downlaoder), FilePath.class)
    .from(FileReference.class)
    .as(Bitmap.class)
    .decoder(new FilePathDecoder(ctx))
    .diskCacheStrategy(DiskCacheStrategy.NONE);
Run Code Online (Sandbox Code Playgroud)

问题是:没有交叉淡入淡出动画.那我怎么回来呢?

我需要一个自定义ResourceDecoder,因为对于某些模型,我必须加载webp与transparancy,这在所有Android版本上都不受支持.

所以我的问题是如何将crossfadeAnimation返回到我的GenericRequestBuilder?

Sam*_*udd 5

不幸的是,没有内置的方法来交叉淡入淡出的位图.但是,您可以使用自定义BitmapImageViewTarget,并使用TransitionDrawableonResourceReady()交叉淡入淡出.如果您想在缓存资源时避免应用交叉淡入淡出,您可以onResourceReadyRequestListener中执行相同的操作,它将为您提供该信息.

Glide用于在内部应用交叉淡化的代码也可能有所帮助.

此外,由于TransitionDrawable只能使用Drawables,你需要首先包装你BitmapBitmapDrawable.