2013.12.04 (6)——— android SlidingMenu之ViewPagerActivity
2013.12.04 (6)——— android SlidingMenu之ViewPagerActivity
package com.jeremyfeinstein.slidingmenu.example;import java.util.ArrayList;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.support.v4.view.ViewPager.OnPageChangeListener;import com.jeremyfeinstein.slidingmenu.example.fragments.ColorFragment;import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;public class ViewPagerActivity extends BaseActivity {public ViewPagerActivity() {super(R.string.viewpager);}@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);ViewPager vp = new ViewPager(this);vp.setId("VP".hashCode());vp.setAdapter(new ColorPagerAdapter(getSupportFragmentManager()));setContentView(vp);vp.setOnPageChangeListener(new OnPageChangeListener() {@Overridepublic void onPageScrollStateChanged(int arg0) { }@Overridepublic void onPageScrolled(int arg0, float arg1, int arg2) { }@Overridepublic void onPageSelected(int position) {switch (position) {case 0:getSlidingMenu().setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);break;default:getSlidingMenu().setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);break;}}});vp.setCurrentItem(0);getSlidingMenu().setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);}public class ColorPagerAdapter extends FragmentPagerAdapter {private ArrayList<Fragment> mFragments;private final int[] COLORS = new int[] {R.color.red,R.color.green,R.color.blue,R.color.white,R.color.black};public ColorPagerAdapter(FragmentManager fm) {super(fm);mFragments = new ArrayList<Fragment>();for (int color : COLORS)mFragments.add(new ColorFragment(color));}@Overridepublic int getCount() {return mFragments.size();}@Overridepublic Fragment getItem(int position) {return mFragments.get(position);}}}