我需要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. AChartEngine滾動區域
- 3. PRISM滾動區域
- 4. ListView的滾動區域
- 5. 動態滾動區域
- 6. 滾動條滾動控制滾動區域Qt中
- 7. RecyclerView不滾動滾動
- 8. 限制UIScrollView中的滾動區域
- 9. cocos2d版本2中的滾動區域
- 10. 與滾動recyclerview
- 11. RecyclerView + ImageView的滾動
- 12. 可滾動區域html
- 13. Javascript可滾動區域
- 14. 限制uiscrollview滾動區域
- 15. iPad可滾動區域
- 16. 滾動查看區域
- 17. 空滾動區域QT C++
- 18. 限制滾動區域
- 19. 設置UIScrollView滾動區域
- 20. 在嵌套滾動視圖的區域中啓用滾動
- 21. 在溢出區域中滾動選擇區域
- 22. 在文本區域中啓用滾動
- 23. 滾動recyclerview如何滾動recyclerview以外的對象
- 24. RecyclerView裏面的RecyclerView不滾動
- 25. 滾動recyclerview項目
- 26. Recyclerview滾動問題
- 27. 滯後滾動recyclerview
- 28. RecyclerView不會滾動
- 29. RecyclerView無盡滾動
- 30. 相對RecyclerView滾動
對不起,但你的問題還不清楚,你是否想要當你到達RecyclerView的最後一個項目時,你會回到RecyclerView的中間項目? –
你可以添加一個空的頁腳查看並手動設置它的高度以匹配最後一項的一半高度?這將實現滾動距離最後一項高度一半的列表的效果。 – Guardanis