6

I'm trying to get position of first visible item in RecyclerView, because I need some information about it (e.g. title). Unfortunately when I'm using LayoutManager.findFirstVisibleItemPosition() it returns 0, all the time. Moreover, my RecyclerView is located in NestedScrollView. All this items are in PageAdapter (TabLayout). Here is my two method for setting up RecyclerView:

private void initializeAdapter() {
    NaBiezacoAktualnosciAdapter adapter = new NaBiezacoAktualnosciAdapter(items, getContext());
    recyclerView.setAdapter(adapter);
}

private void initializeLayoutManager(final View v) {
    final ExpansiveLayoutManager llm = new ExpansiveLayoutManager(getActivity());
    recyclerView.setLayoutManager(llm);
    recyclerView.setNestedScrollingEnabled(false);
    recyclerView.setHasFixedSize(true);
    recyclerView.addOnItemTouchListener(
            new RecyclerItemClickListener(getContext(), new RecyclerItemClickListener.OnItemClickListener() {
                @Override
                public void onItemClick(View view, int position) {
                }
            })
    );
    NestedScrollView nestedScrollView = (NestedScrollView) v.findViewById(R.id.nested);
    nestedScrollView.setOnScrollChangeListener(new NestedScrollView.OnScrollChangeListener() {
        @Override
        public void onScrollChange(NestedScrollView v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
            int firstVisibleCard = llm.findFirstCompletelyVisibleItemPosition();
            int lastVisibleCard = llm.findLastCompletelyVisibleItemPosition();
            Log.d("aaaa", "firstVisibleCard= " + firstVisibleCard);
            Log.d("aaaa", "lastVisibleCard= " + lastVisibleCard);
        }
    });
}

Do anybody have idea how to make this work? I'd be glad for any advice :)

ciepi17
  • 61
  • 1
  • 3
  • But I don't need to set on item clicked listener. I want to achive something like this: I have layout anchored in the top, it display date of first visible item. When I scroll down date change to first visible item and so on. I just need to know position in adapter of first visible item. – ciepi17 May 11 '16 at 11:24

0 Answers0