我想将RecyclerView滚动到某个位置,然后使用LinearLayoutManager.scrollToPositionWithOffset()
进行滚动。
但它不起作用。有谁可以帮助我?
答案 0 :(得分:1)
RecyclerView rv = findViewById(R.id.recycler_view);
LinearLayoutManager layoutManager = new LinearLayoutManager(this);
rv.setLayoutLayoutManager(layoutManager);
layoutManager.smoothScrollToPosition(position);
使用与特定RecyclerView一起使用的LayoutManager,可以将RecyclerView滚动到某个项目位置。 Plz参考上面的代码
答案 1 :(得分:0)
如果您的列表中没有很多项目,您可以使用 LinearSmoothScroller
val smoothScroller = object : LinearSmoothScroller(activity) {
override fun getVerticalSnapPreference(): Int {
return SNAP_TO_START
}
}
然后当你想滚动时:
smoothScroller.targetPosition = position // position on which item you want to scroll recycler view
binding.cardsRecycler.layoutManager?.startSmoothScroll(smoothScroller)