第一次使用BottomNavigationBar,写一点使用心得
第一步:在build.gradle添加依赖
compile 'com.ashokvarma.android:bottom-navigation-bar:2.0.2'第二步:添加布局
<android.support.v4.view.ViewPager android:id="@+id/new_version_viewpager" android:layout_width="match_parent" android:layout_weight="1" android:layout_height="0dp"/> <View style="@style/gray_line"/> <com.ashokvarma.bottomnavigation.BottomNavigationBar android:id="@+id/bottom_bar" android:layout_gravity="bottom" android:layout_width="match_parent" android:layout_height="wrap_content"/>第三步: 初始化控件,这个就不用上代码了吧
第四步:设置样式
mDataBinding.bottomBar.setMode(BottomNavigationBar.MODE_SHIFTING) .setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_RIPPLE);第五步:添加item
mDataBinding.bottomBar .addItem(new BottomNavigationItem(R.drawable.ic_vector_orange_money, "现金贷")) .setActiveColor(R.color.red_background) .addItem(new BottomNavigationItem(R.drawable.ic_vector_house, "房租贷")) .setActiveColor(R.color.green_background) .addItem(new BottomNavigationItem(R.drawable.ic_vector_person, "我的")) .setActiveColor(R.color.blue_background).setFirstSelectedPosition(0)//设置默认选择的按钮 .initialise();设置ViewPager默认选择第一项
mDataBinding.newVersionViewpager.setCurrentItem(0);
第六步:设置子Item关联Viewpager,ViewPager滑动的时候,子Item同步切换
mDataBinding.newVersionViewpager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { mDataBinding.bottomBar.selectTab(position); } @Override public void onPageScrollStateChanged(int state) { } });