怎样在fragment实现三个页面的滑动
时间: 2024-02-25 09:55:48 浏览: 72
Android ViewPager + Fragment实现滑动页面效果
要在Fragment中实现三个页面的滑动,可以使用ViewPager和TabLayout组合来实现。具体步骤如下:
1. 在布局文件中添加ViewPager和TabLayout控件。
2. 创建FragmentPagerAdapter适配器,并重写getItem()和getCount()方法。getItem()方法返回对应位置的Fragment实例,getCount()方法返回Fragment的数量。
3. 在Activity中设置ViewPager的适配器,并关联TabLayout和ViewPager。
4. 在每个Fragment中添加对应的布局和逻辑。
示例代码如下:
布局文件:
```
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
app:tabGravity="fill"
app:tabMode="fixed"/>
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
```
FragmentPagerAdapter适配器:
```
public class MyPagerAdapter extends FragmentPagerAdapter {
private List<Fragment> fragmentList;
private List<String> titleList;
public MyPagerAdapter(FragmentManager fm, List<Fragment> fragmentList, List<String> titleList) {
super(fm);
this.fragmentList = fragmentList;
this.titleList = titleList;
}
@Override
public Fragment getItem(int position) {
return fragmentList.get(position);
}
@Override
public int getCount() {
return fragmentList.size();
}
@Override
public CharSequence getPageTitle(int position) {
return titleList.get(position);
}
}
```
Activity中设置ViewPager和TabLayout:
```
ViewPager viewPager = findViewById(R.id.view_pager);
TabLayout tabLayout = findViewById(R.id.tab_layout);
List<Fragment> fragmentList = new ArrayList<>();
fragmentList.add(new FragmentA());
fragmentList.add(new FragmentB());
fragmentList.add(new FragmentC());
List<String> titleList = new ArrayList<>();
titleList.add("页面1");
titleList.add("页面2");
titleList.add("页面3");
MyPagerAdapter adapter = new MyPagerAdapter(getSupportFragmentManager(), fragmentList, titleList);
viewPager.setAdapter(adapter);
tabLayout.setupWithViewPager(viewPager);
```
三个Fragment中添加对应的布局和逻辑即可。
阅读全文