我有一个带有滚动条的不同高度的物品的RecyclerView.
由于项目的高度不同,滚动条会更改其垂直大小,具体取决于当前显示的项目(请参见屏幕截图).
我创建了一个显示问题here的示例项目.
>有没有人有同样的问题并修复它?
>如何覆盖滚动条高度和位置的计算以提出自己的实现?
编辑:滚动条的位置和高度可以通过覆盖RecyclerViews computeVerticalScrollOffset,computeVerticalScrollRange和computeVerticalScrollExtent来控制.
我不知道如何实现这些以使滚动条与动态项目高度正常工作.
我想,问题是RecyclerView根据当前可见的项目估算所有项目的总高度,并相应地设置滚动条的位置和高度.解决这个问题的一种方法可能是更好地估计所有物品的总高度.
解决方法:
处理这种情况的最佳方法可能是以某种方式根据每个项目的大小计算滚动条范围.这可能不实际或不可取.取而代之的是,这是一个简单的自定义RecyclerView实现,您可以使用它来尝试获得您想要的东西.它将向您展示如何使用各种滚动方法来控制滚动条.它将根据显示的项目数量将拇指的大小固定为初始大小.要记住的关键是滚动范围是任意的,但所有