【发布时间】:2017-06-16 18:03:00
【问题描述】:
我事先道歉,我没有任何代码示例,因为我完全不知道如何解决我的问题。我想知道,如何将列表的最后一项滚动到回收站视图的顶部?
默认情况下,如果所有项目都显示,并且不需要滚动,那么您将无法再滚动查看更多项目。与此的冲突是我正在根据最顶部的项目更新单独视图上的信息。
对此有什么想法吗?我唯一能想到的就是添加任意的假空数据,以便我可以继续滚动。提前致谢
更新:除了虚拟数据之外,最好的替代解决方案是向 RecyclerView 添加填充。如果我添加 paddingBottom,在滚动到最后一项之前,您不会看到空白区域。但是填充必须精确才能将最后一个项目强制到顶部位置。所以即使这是有缺陷的。
<android.support.v7.widget.RecyclerView
android:clipToPadding="false"
android:paddingBottom="300dp"
android:id="@+id/rv_data"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@null"
android:scrollingCache="false"/>
【问题讨论】:
-
也许一些代码会有所帮助!
-
无事可做。我不是在询问如何设置回收站视图。我在问是否有一个属性可以执行我所描述的操作,例如 LayoutManager 中的 setStackFromEnd 或 recyclerview 级别的 setNestedScrolling。任何已知会执行此操作的属性,或者我是否必须创建自定义 RecyclerView 或想出一些技巧。这确实是个问题。
-
也许这样://从顶部滚动项目 2 到 20 像素 linearLayoutManager.scrollToPositionWithOffset(2, 20);
-
是的,但这是以前的。这不适用于之后。在用户滚动到列表底部之后。这会将您带到一个特定的位置。
标签: android android-recyclerview