TabLayout的操作实现

来源:互联网 发布:2017年10月非农数据 编辑:程序博客网 时间:2024/05/16 09:19

要放入的依赖

compile 'com.android.support:design:26.0.0-alpha1'

public class MainActivity extends FragmentActivity {

   //声明属性
    TabLayout  tab;
    ViewPager  vp;

    List<String> liststr;

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        tab=(TabLayout) findViewById(R.id.tab);
        vp=(ViewPager) findViewById(R.id.vp);

        Myadapter   adapter=new Myadapter(getSupportFragmentManager());
        vp.setAdapter(adapter);
        //设置滑动
        tab.setTabMode(TabLayout.MODE_SCROLLABLE);
        //tab 与vp进行绑定
        tab.setupWithViewPager(vp);


    }


/tab的操作实现内容
    private void initData(){
        liststr=new ArrayList<String>();
        liststr.add("推荐");
        liststr.add("热点");
        liststr.add("北京");
        liststr.add("视频");
        liststr.add("社会");
        liststr.add("图片");
        liststr.add("娱乐");
        liststr.add("问答");
        liststr.add("科技");
        liststr.add("汽车");
        liststr.add("财经");
        liststr.add("军事");
        liststr.add("体育");
        liststr.add("段子");
        liststr.add("美女");
        liststr.add("国际");
        liststr.add("趣图");
        liststr.add("健康");
        liststr.add("特卖");
        liststr.add("房产");
    }

    //vp适配器
   class  Myadapter extends FragmentPagerAdapter{
        public Myadapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int position) {
            Fragment fm=null;
            switch (position){
                case 0:fm=new Fragment1();
                     break;
                case 1:fm=new Fragment2();
                    break;
                case 2:fm=new Fragment3();
                    break;
                case 3:fm=new Fragment4();
                    break;
                case 4:fm=new Fragment5();
                    break;
                case 5:fm=new Fragment6();
                    break;
                case 6:fm=new Fragment7();
                    break;
                case 7:fm=new Fragment8();
                    break;
                case 8:fm=new Fragment9();
                    break;
                case 9:fm=new Fragment10();
                    break;
                case 10:fm=new Fragment11();
                    break;
                case 11:fm=new Fragment12();
                    break;
                case 12:fm=new Fragment13();
                    break;
                case 13:fm=new Fragment14();
                    break;
                case 14:fm=new Fragment15();
                    break;
                case 15:fm=new Fragment16();
                    break;
                case 16:fm=new Fragment17();
                    break;
                case 17:fm=new Fragment18();
                    break;
                case 18:fm=new Fragment19();
                    break;
                case 19:fm=new Fragment20();
                    break;

            }

            return fm;
        }

        //返回的个数
        @Override
        public int getCount() {
            return 20;
        }

        //显示tab的内容
        @Override
        public CharSequence getPageTitle(int position) {
            return liststr.get(position);
        }
    }






}