项目之使用TabLayout,实现页签的切换

xiaoxiao2021-02-28  73

初始化布局

1、创建数组,mFragments = new BaseFragment[4];

2、实例化,  mFragments[0] = NewsClassfiFragment.newInstance(ONE);

3、设置Tab的模式,TabMode:布局中Tab的行为模式(behavior mode),  mTabs.setTabMode(TabLayout.MODE_FIXED);

4、实例化适配器,  mAdapter = new BaseFragmentAdapter(getChildFragmentManager(), mFragments, titles);

private String[] titles = {"头条", "NBA", "汽车", "笑话"}; private BaseFragment[] mFragments; private BaseFragmentAdapter mAdapter; public static final int ONE = 0; public static final int TWO = 1; public static final int THREE = 2; public static final int FOUR = 3; @Override protected void initView() { mFragments = new BaseFragment[4]; mFragments[0] = NewsClassfiFragment.newInstance(ONE); mFragments[1] = NewsClassfiFragment.newInstance(TWO); mFragments[2] = NewsClassfiFragment.newInstance(THREE); mFragments[3] = NewsClassfiFragment.newInstance(FOUR); mTabs.setTabMode(TabLayout.MODE_FIXED); mAdapter = new BaseFragmentAdapter(getChildFragmentManager(), mFragments, titles); mViewPager.setAdapter(mAdapter); mTabs.setupWithViewPager(mViewPager); mViewPager.addOnPageChangeListener(this); } 5、创建 NewsClassfiFragment.class

package com.huading.baselhz; import android.os.Bundle; import com.huading.baselhz.base.BaseFragment; /** * 作者:LHZ on 2017/5/8 10:27 * 界面: */ public class NewsClassfiFragment extends BaseFragment { public static BaseFragment newInstance(int type) { Bundle bundle = new Bundle(); NewsClassfiFragment fragment = new NewsClassfiFragment(); bundle.putInt("type", type); fragment.setArguments(bundle); return fragment; } @Override protected int getLayoutId() { return R.layout.fragment_news_classfi; } @Override protected void initView() { } @Override protected void lazyFetchData() { } }

转载请注明原文地址: https://www.6miu.com/read-96988.html

最新回复(0)