我想在我的交错网格视图中实现加载更多功能。我已经尝试了一些代码行,比如使用addOnScrollListener
,但是当我到达列表底部时没有调用。
请找到我试图实现加载更多功能但未获得的代码预期的结果。
MY_STRAGGED_RECYCLIVIEW.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView,
int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
totalItemCount = staggeredGridLayoutManager.getItemCount();
lastVisibleItem = staggeredGridLayoutManager
.findLastCompletelyVisibleItemPositions(null)[0];
if (!loading && totalItemCount <= (lastVisibleItem + visibleThreshold)) {
// End has been reached
// Do something
System.out.println("I amm here dd ");
loading = true;
}
}
});
在上面的代码中, System.out 没有获得打印...
我为setOnScrollChangeListener
的stragged gridview尝试了另一个监听器,但它也没有工作
MY_STRAGGED_RECYCLIVIEW.setOnScrollChangeListener(new View.OnScrollChangeListener() {
@Override
public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
System.out.println("I amm here fffffffffff ");
}
});
此侦听器出现同样的问题,而不是打印我的 System.out
我在adapter
类{@ 1}}类中尝试过的更多内容是
onBindViewHolder
上面的代码也没有用。请帮我解决这个问题..谢谢:)
@Abbas 请检查下面的适配器代码
if(getCount()==position)
{
////for getting the last item of the recycleview
}
答案 0 :(得分:1)
实际上我使用的NestedScrollView
是我view
的父Staggered recycleview
。因此addOnScrollListener
听众和setOnScrollChangeListener
没有在其中工作..
我在setOnScrollChangeListener
中使用了NestedScrollView
,它运行正常。检查我的下面的解决方案: -
NestedScrollView myNestedScroll= (NestedScrollView) findViewById(R.id.myNestedScroll);
myNestedScroll.setOnScrollChangeListener(new NestedScrollView.OnScrollChangeListener() {
@Override
public void onScrollChange(NestedScrollView v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
if (scrollY > oldScrollY) {
Log.i(TAG, "Scroll DOWN");
}
if (scrollY < oldScrollY) {
Log.i(TAG, "Scroll UP");
}
if (scrollY == 0) {
Log.i(TAG, "TOP SCROLL");
}
if (scrollY == (v.getChildAt(0).getMeasuredHeight() - v.getMeasuredHeight())) {
Log.i(TAG, "BOTTOM SCROLL");
}
}
});