首页 > 解决方案 > Android水平轮播RecyclerView消失

问题描述

我有一个垂直的 RecyclerView,它的元素之一是水平的 RecyclerView,它是一个图像轮播。但是,当我在垂直 RecyclerView 上第二次执行 adapter.notifyDataSetChanged() 时,水平 RecyclerView 中的所有图像都变得不可见(它们的高度为 0)。

每个轮播图像项:

<ImageView
    android:id="@+id/iv_image"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:scaleType="fitCenter"/>

另外,我正在使用 glide 来下载图像。我看到图像已下载并且 ImageView 已下载图像,但不知何故它的高度变为 0。

这是它一开始的样子: 在此处输入图像描述

这是它在第二个 notifyDataSetChanged 之后的样子: 在此处输入图像描述

标签: androidandroid-recyclerviewandroid-imageviewandroid-glide

解决方案


您可以尝试多种选择: 1. 设置图像的固定高度。2.也许您在适配器中的某些 if 条件下设置图像,处理该 else 条件也是因为适配器正在重用这些项目。


推荐阅读