我的應用程序有一個水平滾動的回收站視圖。 我想觸發另一個事件,當我滾動列表併到達最後的位置。當我們滾動到Android中RecyclerView的最後位置時通知
1
A
回答
1
只需在您的recyclerview上實現addOnScrollListener()。然後在滾動監聽器裏面實現下面的代碼。
RecyclerView.OnScrollListener mScrollListener = new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
if (mIsLoading)
return;
int visibleItemCount = mLayoutManager.getChildCount();
int totalItemCount = mLayoutManager.getItemCount();
int pastVisibleItems = mLayoutManager.findFirstVisibleItemPosition();
if (pastVisibleItems + visibleItemCount >= totalItemCount) {
//End of list
}
}
};
0
private RecyclerView.OnScrollListener nRecyclerViewOnScrollListener = new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
}
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
int visibleItemCount = notificationLayoutManager.getChildCount();
int totalItemCount = notificationLayoutManager.getItemCount();
int firstVisibleItemPosition = notificationLayoutManager.findFirstVisibleItemPosition();
if ((visibleItemCount + firstVisibleItemPosition) >= totalItemCount) {
nLoadMoreItems();
}
}
};
private void nLoadMoreItems() {
if (defaultCurrentPage < defaultpageCount)
layout_load_more_loadingNotification.setVisibility(View.VISIBLE);
int pageCount = (defaultCurrentPage + 1);
//fetch second page data
}
嘗試
+0
謝謝, 你可以在下面查看我更新的答案@Safal –
0
看到所有的答案後,我解決我的問題,通過這樣做,
private RecyclerView.OnScrollListener nRecyclerViewOnScrollListener = new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if (newState == 2) {
try {
if (lastVisibleItemPosition + 1 == totalItemCount) {
//Write you code here
}
} catch (Exception e) {
e.printStackTrace();
Log.i(TAG, e.getMessage());
}
}
}
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
totalItemCount = mLayoutManager.getItemCount();
lastVisibleItemPosition = ((LinearLayoutManager) recyclerView.getLayoutManager()).findLastCompletelyVisibleItemPosition();
}
};
添加監聽器來回收視圖
recyclerView.addOnScrollListener(nRecyclerViewOnScrollListener);
相關問題
- 1. 滾動時更新recyclerview的位置(android)
- 2. 自動滾動RecyclerView到物品最後位置?
- 3. 根據當前滾動位置在Recyclerview中自動滾動
- 4. 如何檢測RecyclerView何時滾動到最高位置
- 5. 當用戶在Android中我的位置時通知
- 6. Recyclerview完全滾動到位置
- 7. 當我們滾動到它的位置時,使用jquery動畫一個div
- 8. RecyclerView - 跳轉到位置,然後平滑滾動到頂部
- 9. 我們怎樣才能滾動父母的佈局,同時滾動recyclerview android
- 10. 當滾動第二個時滾動RecyclerView
- 11. 當我處於最後位置時,我們如何動態添加新項目
- 12. Android的webview不會始終打開到最後滾動位置
- 13. 滾動到recyclerview位置。當鍵盤打開
- 14. 在RecyclerView中保留滾動位置
- 15. Android RecyclerView StaggeredGrid項目在滾動時更改位置
- 16. Android RecyclerView StaggeredGrid項目在滾動頂部時更改位置
- 17. 更改RecyclerView中的項目的視圖位置滾動Android
- 18. Android recyclerview滾動到兩個我的適配器之間的位置?
- 19. 將滾動位置設置爲RecyclerView
- 20. Android ListView滾動到位置
- 21. 如何獲取滾動的RecyclerView位置
- 22. Android RecyclerView - 當我更改第一個項目時,最後更改
- 23. Recyclerview在滾動到特定位置時墜毀
- 24. 當Datagrid的滾動條滾動到最後時,我如何獲得Caliburn Micro Action?
- 25. getLastKnownLocation()Android,當最後一個已知的位置更新?
- 26. 從我們的位置找到位置最近的位置
- 27. 滯後滾動recyclerview
- 28. 當EditText聚焦時,Android EditText的容器(RecyclerView)自動滾動
- 29. 當我在我的AsyncTask叫notifydatasetchanged我Recyclerview滾動到頂部
- 30. 將DivIV位置固定爲當滾動到位置時 - jQuery
你有什麼嘗試到目前爲止?你能發佈你的代碼嗎? –