ViewPager 實現簡單左右滑動

寫幾個 按鈕  和fragment 
在主頁面
用到: View.OnClickListener, ViewPager.OnPageChangeListener
//private Button[] btnArgs;
private ArrayList<Fragment> fragments1;
//private int[] widthArgs;

viewpager.setOnPageChangeListener(this);
dian3.setOnClickListener(this);
dian2.setOnClickListener(this);
dian1.setOnClickListener(this);

//btnArgs = new Button[]{dian1,dian2,dian3 };

fragments1 = new ArrayList<Fragment>();
fragments1.add(new FragmentDianCai());
fragments1.add(new FragmentPingJia());
fragments1.add(new FragmentPingStore());

MyFragmentPagerAdapter adapter = new MyFragmentPagerAdapter(getSupportFragmentManager(),fragments1);
viewpager.setAdapter(adapter);

@Override
public void onClick(View whichbtn) {
    switch (whichbtn.getId()) {
        case R.id.dian1:
            viewpager.setCurrentItem(0);
            break;
        case R.id.dian2:
            viewpager.setCurrentItem(1);
            break;
        case R.id.dian3:
            viewpager.setCurrentItem(2);
            break;
    }
}

@Override
public void onPageScrollStateChanged(int arg0) {
}

@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}

@Override
public void onPageSelected(int arg0) {
   // if(widthArgs==null){
   //     widthArgs = new int[]{dian1.getWidth(),
    //        dian2.getWidth(),
   //         dian3.getWidth(),
   //  };
  //  }
}

寫一個  fragment的適配器  類  :    繼承fragmentPagerAdapter

private List<Fragment> list;

public MyFragmentPagerAdapter(FragmentManager fm, ArrayList<Fragment> list){
    super(fm);
    this.list = list;
}

@Override
public Fragment getItem(int arg0) {
    return list.get(arg0);
}

@Override
public int getCount() {
    return list.size();
}


發佈了56 篇原創文章 · 獲贊 5 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章