在底部的嵌套滚动视图中检测回收站视图的底部到达

时间:2018-10-26 12:58:08

标签: java android android-fragments android-recyclerview

我有这种布局结构。

MainFragment
--> NestedScrollView
 --> Any layout
 --> ViewPager

ViewPager中包含严重的片段,这些片段具有这种结构。

ViewPager's Fragments
--> RecyclerView (nestedScrollingEnableb = false) 

我需要检测回收者视图是否触底。我是在MainFragment中完成此操作的,但是我无法将适配器附加到主片段中的回收者视图,因为每个回收者视图都在不同的片段中。

nestedScrollView.setOnScrollChangeListener(new NestedScrollView.OnScrollChangeListener() {
        @Override
        public void onScrollChange(NestedScrollView v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
            if(v.getChildAt(v.getChildCount() -1) != null) {
                if ((scrollY >= (v.getChildAt(v.getChildCount() - 1).getMeasuredHeight() - v.getMeasuredHeight())) &&
                        scrollY > oldScrollY) {

                }
            }
        }
    });

我也在viewpager的片段中尝试了此操作,但也没有成功。

recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
        @Override
        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
            super.onScrolled(recyclerView, dx, dy);
            if (!recyclerView.canScrollVertically(-1)) {
                //onScrolledToTop();
            } else if (!recyclerView.canScrollVertically(1)) {
                // onScrolledToBottom();
                Utils.createToastMessageShort(getContext(), "BOTTOM");
            } else if (dy < 0) {
                // onScrolledUp();
            } else if (dy > 0) {
                //onScrolledDown();
            }
        }
    });
}

我该如何克服这个问题?

0 个答案:

没有答案