viewPager+fragment
来源:互联网 发布:纳米盒软件下载 编辑:程序博客网 时间:2024/06/14 08:49
Mainactivity类
public class MainActivity extends AppCompatActivity { ViewPager vp; /* Fragment1 f1; Fragment2 f2; Fragment3 f3;*/ List<Fragment> list ; RadioButton btn, btn2, btn3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); vp = (ViewPager) findViewById(R.id.viewpager); btn = (RadioButton) findViewById(R.id.btn); btn2 = (RadioButton) findViewById(R.id.btn2); btn3 = (RadioButton) findViewById(R.id.btn3); list = new ArrayList<>(); list.add(new Fragment1()); list.add(new Fragment2()); list.add(new Fragment3()); ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager(),list); vp.setAdapter(adapter); vp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { } @Override public void onPageScrollStateChanged(int state) { } }); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { vp.setCurrentItem(0); } }); btn2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { vp.setCurrentItem(1); } }); btn3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { vp.setCurrentItem(2); } }); }
class ViewPagerAdapter extends FragmentPagerAdapter { public ViewPagerAdapter(FragmentManager fm, List<Fragment> list) { super(fm); } @Override public Fragment getItem(int position) { return list.get(position); } @Override public int getCount() { return list.size(); } }}这里强调的是
Fragment 方法 要
List<Fragment> list ;
在oncreate方法里
list = new ArrayList<>();list.add(new Fragment1());list.add(new Fragment2());list.add(new Fragment3());ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager(),list);vp.setAdapter(adapter);要这样new 与fragment new的方法不能相同
之前fragment 是这样new 的
Fragment f1 ;
fragment f2;
oncreate里面是这样的
initView();
这是外面的方法private void initView() { f1 = new fragment1(); f2 = new fragment2(); f3 = new fragment3(); f4 = new fragment4();}
Fragment类
public class Fragment3 extends Fragment { @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.activity_fragment3,container,false); return view; }}
阅读全文
0 0
- Fragment+ViewPager
- Viewpager&Fragment
- viewpager + fragment
- viewpager+fragment
- viewpager+fragment
- ViewPager+Fragment
- viewPager+fragment
- ViewPager+Fragment
- ViewPager+Fragment
- viewpager+fragment
- Fragment+ViewPager
- ViewPager+Fragment
- Fragment+ViewPager
- viewpager fragment
- Fragment+ViewPager
- viewpager +Fragment
- viewpager+fragment
- Viewpager+fragment
- 挑战题二
- 解决perl: warning: Setting locale failed. perl: warning: Please check that your locale settings:
- eclipse的入门使用,项目的创建删除,项目的导入导出,eclipse的字体和颜色设置,控制台的字体设置,
- [二分+树状数组]51 Nod 1685——第K大区间2
- BMP图片格式处理
- viewPager+fragment
- MFC 程序怎么限制多开
- 与反素数有关的3个题目
- 关于servlet和servlet容器的图
- http状态码
- 如何在DOS中切换路径
- express启动方式
- qt类(汇总)
- post请求路径出错NET:ERR_CONNECTION_RESET