Android ViewPager
ViewPager is nothing but horizontal scroller for entire screens.
- Lets begin from xml. Add ViewPager in your xml file. You can copy following code.
<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/your_pager" android:layout_width="match_parent" android:layout_height="match_parent" /> - Now move to java file(Activity) create instance for ViewPager added in xml. Make sure this Activity extending FragmentActivity not Activity
mPager = (ViewPager) findViewById(R.id.your_pager);
- Now create adapter for pager, create pager instance
ViewPager mPager; PagerAdapter mPagerAdapter; public static String [] pageItem = new String[]{"Page 1","Page 2","Page 3"}; - Initialize adapter object and set adapter to ViewPager.
mPagerAdapter = new ScreenSlidePagerAdapter(getSupportFragmentManager()); mPager.setAdapter(mPagerAdapter);
- Create slider class which should extend FragmentStatePagerAdapter or FragmentPagerAdapter.
private class ScreenSlidePagerAdapter extends FragmentStatePagerAdapter { public ScreenSlidePagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { // return new MyFragment(position); } @Override public int getCount() { return pageItem.length; } } - Create fragment which will display each screen. It will be slided horizontally.
public class MyFragment extends Fragment { TextView textView; int position = 0; public MyFragment(int position) { this.position = position; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { ViewGroup rootView = (ViewGroup) inflater.inflate( R.layout.my_screen_fragment, container, false); textView = (TextView)rootView.findViewById(R.id.my_page_tv); textView.setText(activityClassObject.pageItem[position]); return rootView; } }
No comments:
Post a Comment