我需要recyclerview将其最后一项滚动到其中间。我的意思是我需要使用LinearLayoutManager的recyclerview的las元素,而不是停止在recyclerview的底部,而是滚动到它的中间。 这是一个简单的方法来实现这一点?recyclerview中的滚动区域
0
A
回答
0
您可以使用RecyclerView.ItemDecoration
在最后一项上放置额外的底部边距。它最终会看起来像这样:
public class TopMarginDecoration
extends RecyclerView.ItemDecoration {
@Override
public void getItemOffsets(outRect, view, parent, state) {
int position = parent.getChildAdapterPosition(view);
if (position + 1 == parent.getAdapter().getItemCount()) {
// get height of recyclerview
// get height of child view
// calculate required space to center the child view
outRect.bottom += calculatedSpace;
}
}
}
您可以使用RecyclerView.addItemDecoration(…)
在活动或片段绑了一起。
0
final LinearLayoutManager llm = new LinearLayoutManager(context,LinearLayoutManager.VERTICAL,false);
mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
if (recyclerView.getAdapter().getItemCount() == (llm.findLastCompletelyVisibleItemPosition() + 1)) {
Toast.makeText(MainActivity.this, "Sholled", Toast.LENGTH_SHORT).show();
}
}
});
相关问题
- 1. 滚动区域
- 2. PRISM滚动区域
- 3. 动态滚动区域
- 4. 限制UIScrollView中的滚动区域
- 5. RecyclerView不滚动滚动
- 6. iPad可滚动区域
- 7. 与滚动recyclerview
- 8. RecyclerView里面的RecyclerView不滚动
- 9. RecyclerView无尽滚动
- 10. RecyclerView不会滚动
- 11. Recyclerview滚动问题
- 12. ListView.TRANSCRIPT_MODE_ALWAYS滚动在RecyclerView
- 13. 闪光 - 自动滚动文字区域
- 14. UIScrollView有限的滚动区域
- 15. 2滚动的文字区域
- 16. 滚动条的RecyclerView使用
- 17. 带滚动条的RecyclerView
- 18. 无限滚动的RecyclerView
- 19. RecyclerView在滚动时抖动
- 20. 动画效果recyclerview滚动
- 21. jQuery的滚动 - 进入/退出滚动区域
- 22. 没有滚动条的可滚动区域
- 23. 保持滚动视图以外的区域也滚动
- 24. 滚动头时滚动recyclerview项
- 25. 当滚动第二个时滚动RecyclerView
- 26. 如何滚动RecyclerView滚动型
- 27. 在RecyclerView中禁用滚动动画
- 28. 使用滚动窗格但不滚动条的可滚动区域
- 29. 向下滚动Android中的RecyclerView
- 30. 垂直recyclerView中的水平滚动viewPager
对不起,但你的问题还不清楚,你是否想要当你到达RecyclerView的最后一个项目时,你会回到RecyclerView的中间项目? –
你可以添加一个空的页脚查看并手动设置它的高度以匹配最后一项的一半高度?这将实现滚动距离最后一项高度一半的列表的效果。 – Guardanis