Search code examples
androidandroid-viewpagerswipescrollabletaps

Scrollable PagerView is not Working in Android studio


I also declare 3 fragment page View As PageView. my app is not responding as soon as i run up there is no error. i reference to this youtube video https://www.youtube.com/watch?v=NYjgX-GNRGo . I think this code is outdated. Can someone show me how can i correct this?

package com.example.name.scrollable;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.View;

  public class MainActivity extends FragmentActivity
  {    
      ViewPager mViewPager = null;
      @Override
      protected void onCreate(Bundle savedInstanceState)
     {    
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);

         mViewPager = (ViewPager) mViewPager.findViewById(R.id.pager);
         FragmentManager fragmentManager = getSupportFragmentManager();
         mViewPager.setAdapter(new MyFragmentAdapter(fragmentManager));
     }    
  }

 class MyFragmentAdapter extends FragmentPagerAdapter
{    
    public MyFragmentAdapter(FragmentManager fm)
    {
        super(fm);    
    }

    @Override
    public Fragment getItem(int position)
    {
        Fragment fragment = null;

        if(position == 0)
        {
            fragment = new Fragment_a();
        }

        if(position == 1)
        {
            fragment = new Fragment_b();
        }

        if (position == 2)
        {
            fragment = new Fragment_c();
        }
        return fragment;
    }

      @Override
     public int getCount()
     {
        return 3;
     }
}

i also make 3 fragment page show can i show with the help of ViewPager


Solution

  • add this one:

    mViewPager = (ViewPager)findViewById(R.id.pager);
    

    instead of this:

    mViewPager = (ViewPager) mViewPager.findViewById(R.id.pager);