首页 > 解决方案 > 如何修复 Glide 加载的图像在 API 级别 23 上消失?

问题描述

我正在使用 Glide 从手机存储中加载图像,由于某种原因,它会短暂闪烁然后消失。这只发生在 API 23 上,这是我的最低要求。任何更高的东西,它都可以正常工作。

我发现这个问题实际上与我的情况相同(由 glide 加载的图像出现然后很快消失),但列出的修复都不适用于我。我怀疑我的图像可能太大,但我使用了适当的文件夹(drawable-hpdi、drawable-xxhpdi 等),所以我应该使用最适合设备的图像。我尝试过调整布局的宽度、高度以及其他人们尝试过但没有运气的东西。

这是我用来加载图像的代码:

GlideApp.with(context)
                .load(imageFromPhone)
                .apply(RequestOptions.placeholderOf(placeHolderImage))
                .into(view);

这是我的 ImageView 的 XML:

<com.example.CustomPager
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/pager1"
            android:contentDescription="Pager"/>
.
.
.

一旦我进入有我的图像的活动,它会短暂地闪烁图像(奇怪的是它显示得比平时高一点)。然后它将完全消失,并在应用程序打开的其余时间消失。

标签: javaandroidandroid-glide

解决方案


在又搞砸了应用程序之后,我发现我使用的是完全透明的照片,并且出于某种原因在 Glide 或 Android API 23 中使颜色与背景相同,但该图像位于层次结构的顶部. 为了解决这个问题,当我使用透明图像时,我需要将我的 ImageView 的 Alpha 更改为 0.0f 并修复它。


推荐阅读