我有一个 RecyclerView
列表,我希望其中当前选定的项目显示在 RecyclerView
的顶部。但是,我仍然希望整个列表可以滚动,因此,从所选项目上方删除 View 不是一个可行的解决方案。
看来我需要一种机制,让 RecyclerView
项目能够滚动到 RecyclerView
的边界之外。我不确定这是否可行,所以如果不可能,是否有人有解决方案来确保当前选定的项目滚动到 RecyclerView
的顶部。
我已经尝试过 smoothScrollToPosition()
但这在位于 RecyclerView
底部并希望中间项目之一滚动的情况下不起作用到顶部。
非常感谢
为了说明,我有一个包含 4 个项目的列表,recyclerview 无法滚动,因为列表中没有足够的项目。
然后我选择一个项目
然后我希望所选项目滚动到顶部,但上面的项目仍然可以滚动。
所以,当我向上滚动时...
最佳答案
在 RecyclerView
上设置一个等于项目高度三倍的底部填充,然后设置 android:clipToPadding="false"
。这将使您的底部项目滚动到顶部并在底部项目上显示填充,但仅在底部项目上显示。
这里是 an answer一个类似的问题很好地阐述了这种技术。
关于android - 允许 Recyclerview 项目滚动到 Recyclerview 顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49033795/