jL4
jL4

Reputation: 1242

Display spinner only on the last page of Viewpager

I have 3 fragments in my viewpager and I want to show a spinner item on my toolbar's menu on the last page. So if I am going from 2 -> 3 the spinner should become visible but if I go from 3 -> 2, it should become invisible. I know I have to add an onPageChangeListener to the viewpager but I am not sure how to determine which was the last page. How can I do it?

Upvotes: 0

Views: 80

Answers (1)

Lokesh Desai
Lokesh Desai

Reputation: 2677

In MainActivity where you have used ViewPager use below method

  //visible spinner when 3rd fragment is visible
                viewPagerFloor.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
                    @Override
                    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

                    }

                    @Override
                    public void onPageSelected(int position) {
                        if(position==2){
                        spinner.setVisibility(View.VISIBLE);
                        }else{
                         spinner.setVisibility(View.GONE);
                         }
                    }

                    @Override
                    public void onPageScrollStateChanged(int state) {

                    }
                });

Upvotes: 1

Related Questions