android - 为什么我的图像在使用 glide 库加载后会缩小

标签 android gridview android-glide

您好,当它们第一次被调用到我的 fragment 中时,我正在使用 glide 图像加载器库填充 gridview,它们看起来像这样 perfect 但在上下滚动后,它们会调整大小,看起来像这样 too small 这是我正在用我的 gridview、glide 库做的事情,还是像我的占位符图像一样的东西?在第二个屏幕截图上,如果我按下图像,它会亮起以显示它实际上填满了整个空间,有人知道我在这里做错了什么吗?我试过在 glide playing with centercrop 等中更改调用,但它似乎没有什么区别,我不确定我将如何计算出每个单元格的宽度和高度,欢迎提出任何建议

编辑 这是我调用 glide 的方式

   Glide.with(getActivity())
                .load(mThumbIds[position])
                .placeholder(R.drawable.placeholder)
                .error(R.drawable.ic_drawer)
                .centerCrop()
                .override(500,300)
                .into(imageView);

最佳答案

实际上,您必须为图像容器 (ImageView) 提供固定的宽度和高度。

<ImageView
    android:id="@+id/channelImage"
    android:layout_width="65dp"
    android:layout_height="65dp"
    android:layout_centerHorizontal="true"
    android:layout_margin="10dp"
    android:src="@drawable/sama" />

然后,当您调用 glide 时,您必须使用 override 方法动态覆盖宽度和高度。这是您容器的最大宽度和高度。

Glide.with(getActivity())
                    .load("your url")

                    .placeholder(R.drawable.tv2v_icon)
                    .diskCacheStrategy(DiskCacheStrategy.ALL)
                    .fitCenter()
                    .override(500,500)
                    .into(channelImage);

希望对您有所帮助。

关于android - 为什么我的图像在使用 glide 库加载后会缩小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31786501/

相关文章:

java - 尝试使用 URI 构建器构建的 url 执行 get 请求

java - 为什么即使 myLocation 是全局变量,当 onSuccess() 终止时 myLocation 也会变为 null?

Android SensorManager 奇怪如何重新映射CoordinateSystem

xaml - 使用 x :Bind inside the GridView's ItemTemplate layout User Control in UWP

asp.net - c#使用onrowdatabound从gridview asp.net中的隐藏单元格获取值

android - Proguard, Glide 3.6.1和Gradle 1.3.1错误

android - 在 ImageView Android 中使用 Glide 调整图像大小

Android自定义工具栏重叠状态栏: how to resolve it

asp.net - GridView RowUpdating 无法获取新值

bitmap - getDrawable() 在尝试从 imageview 获取位图时给出空对象