BottomTabBar+fragment+viewpager

来源:互联网 发布:mac系统word画流程图 编辑:程序博客网 时间:2024/06/05 19:00
compile 'com.android.support:design:25.3.1'compile 'com.hjm:BottomTabBar:1.1.1'
<com.hjm.bottomtabbar.BottomTabBar    android:layout_width="match_parent"    android:layout_height="match_parent"    android:id="@+id/bottom_tab_bar"    ></com.hjm.bottomtabbar.BottomTabBar>

import android.graphics.Color;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import com.bawei.monijinengti.fragment.HangqingFragment;import com.bawei.monijinengti.fragment.HomeFragment;import com.bawei.monijinengti.fragment.ZixuanFragment;import com.bawei.monijinengti.fragment.ZixunFragment;import com.hjm.bottomtabbar.BottomTabBar;public class MainActivity extends AppCompatActivity {    private BottomTabBar tabbar;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        tabbar = (BottomTabBar) findViewById(R.id.bottom_tab_bar);        inittab();    }    private void inittab() {        tabbar.init(getSupportFragmentManager())                .setImgSize(50, 50)                .setFontSize(12)                .setTabPadding(4, 6, 10)                .setChangeColor(Color.RED, Color.DKGRAY)                .addTabItem("首页", R.drawable.a9a, HomeFragment.class)                .addTabItem("自选", R.drawable.a_7, ZixuanFragment.class)                .addTabItem("行情", R.drawable.a_k, HangqingFragment.class)                .addTabItem("咨询", R.drawable.a_w, ZixunFragment.class)                .isShowDivider(false)                .setOnTabChangeListener(new BottomTabBar.OnTabChangeListener() {                    @Override                    public void onTabChange(int position, String name) {                    }                });    }}//创建fragment就可以//tablayout
 <android.support.design.widget.TabLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:id="@+id/tab"        ></android.support.design.widget.TabLayout><android.support.v4.view.ViewPager    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:id="@+id/vp"    ></android.support.v4.view.ViewPager>
public class ZixunFragment extends Fragment {    private TabLayout tab;    private ViewPager vp;    String[] strName = new String[]{"泸深", "板块", "指数", "港股", "新三板"};    List<Fragment> flist=new ArrayList<>();    private MyAdapter adapter;    @Nullable    @Override    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {        View view=inflater.inflate(R.layout.fragmentfour,null);        tab = (TabLayout) view.findViewById(R.id.tab);        vp = (ViewPager) view.findViewById(R.id.vp);        settab();        adapter = new MyAdapter(getActivity().getSupportFragmentManager());        vp.setAdapter(adapter);        tab.setupWithViewPager(vp);        return view;    }    private void settab() {        for (int i=0;i<5;i++){            tab.addTab(tab.newTab().setText(strName[i]));        }        flist.add(new Fragment_02());        flist.add(new Fragment_03());        flist.add(new Fragment_04());        flist.add(new Fragment_05());        flist.add(new Fragment_06());    }    class MyAdapter extends FragmentPagerAdapter {        public MyAdapter(FragmentManager fm) {            super(fm);        }        @Override        public Fragment getItem(int position) {            return flist.get(position);        }        @Override        public int getCount() {            return flist.size();        }        @Override        public CharSequence getPageTitle(int position) {            return strName[position];        }    }}