Android Glide占位符大小

Tav*_*vas 11 java android android-layout android-glide

我有Android Glide的问题.我试图快速交换我的图像,他们只是成为占位符大小,我的占位符图像是非常低的大小.那么我需要做什么?

也许我需要检查它是否已装载或其他东西,但我不知道如何.

Glide.with(this)
    .load(quest.get(id).getImage())
    .placeholder(R.drawable.load)
    .fitCenter()
    .crossFade()
    .into(imageView);
Run Code Online (Sandbox Code Playgroud)

Ash*_*rat 15

根据Glide GitHub页面上的这个问题,您可以通过在Glide请求中添加以下行来修复它:

  .dontAnimate()
Run Code Online (Sandbox Code Playgroud)

这将使你的满载线:

  Glide.with(context)
            .load("http://lorempixel.com/150/150")
            .placeholder(R.drawable.no_image)
            .override(100, 100)
            .dontAnimate()
            .into(imageView);
Run Code Online (Sandbox Code Playgroud)

  • 正如该链接所提到的,.don'tAnimate()也可以替换为.animate(android.R.anim.fade_in) (3认同)

Ale*_*pin 0

如果我正确理解您的问题,您需要加载图像,但它们的宽度和高度必须大于占位符图像。要解决您的问题,您首先应该阅读 Glide 的文档。我在 xml 文件中看不到您的 ImageView 定义,但我认为您使用了wrapp_content 属性来表示宽度和高度。如果我是对的,那就是你的瓶颈。在开始加载图像之前,Glide 会获取准确的 ImageView 宽度和高度。之后,它从网络加载图像,同时根据 ImageView 属性之一(宽度或高度)调整其大小。这就是为什么加载后会得到小图像的原因。要解决您的问题,只需将 ImageView 的宽度或高度设置为您期望看到的值即可。图像的另一面将由 Glide 逻辑自动计算。