TabLayout_Viewpage多个界面

来源:互联网 发布:数据精灵注册机 编辑:程序博客网 时间:2024/05/21 14:52
TabLayout布局
    <android.support.design.widget.TabLayout        android:layout_width="match_parent"        android:layout_height="50dp"        android:id="@+id/tas"        app:tabGravity="center"        app:tabIndicatorColor="@color/colorAccent"        app:tabMode="scrollable"        app:tabSelectedTextColor="@color/colorPrimaryDark"        app:tabTextColor="@color/colorPrimary"        ></android.support.design.widget.TabLayout>


//需要写viewpage界面的Fragment代码
package com.bwie.pwt;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.design.widget.TabLayout;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import java.util.ArrayList;/** * author:Created by WangZhiQiang on 2017/10/17. */public class pageThree extends Fragment {    private View view;    private TabLayout tl;    private ViewPager vp;    private String[] title = new String[]{"推荐", "热门", "关注"};    private ArrayList<Fragment> list = new ArrayList<Fragment>();    @Nullable    @Override    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {        view = inflater.inflate(R.layout.layout_fa, container, false);        return view;    }    @Override    public void onActivityCreated(@Nullable Bundle savedInstanceState) {        super.onActivityCreated(savedInstanceState);        initView();        vp.setAdapter(new MyFragmentAdapter(getFragmentManager()));        tl.setupWithViewPager(vp);    }    private void initView() {        //获取控件id        tl = (TabLayout) view.findViewById(R.id.tl);        vp = (ViewPager) view.findViewById(R.id.vp);        list.add(new pageTui());        list.add(new pageRe());        list.add(new pageGuan());    }    //pagerAdapter适配器    class MyFragmentAdapter extends FragmentPagerAdapter {        public MyFragmentAdapter(FragmentManager fm) {            super(fm);        }        @Override        public CharSequence getPageTitle(int position) {            return title[position];        }        @Override        public Fragment getItem(int position) {            return list.get(position);            /*            另一种方法            Fragment fragment = null;            switch (position){                case 0:                        fragment = new pageTui();                        break;                case 1:                        fragment = new pageRe();                        break;                case 2:                        fragment = new pageGuan();                        break;            }            return fragment;             */        }        @Override        public int getCount() {            return title.length;        }    }}
原创粉丝点击