viewpager如何与TabLayout配合

avatar
作者
猴君
阅读量:0

要将ViewPager与TabLayout配合使用,可以通过以下步骤:

  1. 在布局文件中添加TabLayout和ViewPager组件:
<android.support.design.widget.TabLayout     android:id="@+id/tabLayout"     android:layout_width="match_parent"     android:layout_height="wrap_content"     android:background="?attr/colorPrimary"     android:elevation="6dp"     app:tabMode="scrollable"     app:tabGravity="fill"/>  <android.support.v4.view.ViewPager     android:id="@+id/viewPager"     android:layout_width="match_parent"     android:layout_height="match_parent"/> 
  1. 在Activity或Fragment中初始化TabLayout和ViewPager,并关联它们:
TabLayout tabLayout = findViewById(R.id.tabLayout); ViewPager viewPager = findViewById(R.id.viewPager);  MyPagerAdapter pagerAdapter = new MyPagerAdapter(getSupportFragmentManager(), tabLayout.getTabCount()); viewPager.setAdapter(pagerAdapter); tabLayout.setupWithViewPager(viewPager); 
  1. 创建PagerAdapter类来管理ViewPager中的页面:
public class MyPagerAdapter extends FragmentStatePagerAdapter {     private int numOfTabs;      public MyPagerAdapter(FragmentManager fm, int numOfTabs) {         super(fm);         this.numOfTabs = numOfTabs;     }      @Override     public Fragment getItem(int position) {         switch (position) {             case 0:                 return new Tab1Fragment();             case 1:                 return new Tab2Fragment();             case 2:                 return new Tab3Fragment();             default:                 return null;         }     }      @Override     public int getCount() {         return numOfTabs;     } } 
  1. 创建各个Tab对应的Fragment类:
public class Tab1Fragment extends Fragment {     @Override     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {         View view = inflater.inflate(R.layout.tab1_layout, container, false);         return view;     } }  // 同样创建Tab2Fragment和Tab3Fragment类 

这样就可以实现ViewPager与TabLayout的配合使用,并通过PagerAdapter管理各个页面的显示。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!