Mainactivity的布局文件
<android.support.v4.view.ViewPager
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<com.ashokvarma.bottomnavigation.BottomNavigationBar
android:id="@+id/bottom_navigation_bar"
android:layout_width="match_parent"
android:layout_height="49dp" />
enter code here
MainActivity引入Viewpager
viewPager = (ViewPager) findViewById(R.id.viewPager);
if (fragments == null) {
fragments = new ArrayList<Fragment>();
fragments.add(new HomeFragment());
fragments.add(new HomeFragment());
fragments.add(new HomeFragment());
}
mainAdapter = new MainAdapter(getSupportFragmentManager(), fragments);
viewPager.setAdapter(mainAdapter);
viewPager.addOnPageChangeListener(this);
viewPager.setCurrentItem(0);
enter code here
public class MainAdapter extends FragmentPagerAdapter {
private List<Fragment> mFragmentList;
public MainAdapter(FragmentManager fm, List<Fragment> mFragmentList) {
super(fm);
this.mFragmentList = mFragmentList;
}
@Override
public Fragment getItem(int position) {
return mFragmentList.get(position);
}
@Override
public int getCount() {
return mFragmentList.size();
}
@Override
public int getItemPosition(Object object) {
return POSITION_NONE;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
super.destroyItem(container, position, object);
}
}
enter code here
底部导航条BottomNavigationBar
private void initBottomNavigationBar() {
bottomNavigationBar = (BottomNavigationBar) findViewById(R.id.bottom_navigation_bar);
bottomNavigationBar.setTabSelectedListener(this);
bottomNavigationBar.clearAll();
bottomNavigationBar.setMode(BottomNavigationBar.MODE_FIXED);
bottomNavigationBar.setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_STATIC);
bottomNavigationBar
.addItem(new BottomNavigationItem(R.mipmap.app_home_two, "首页")
.setInactiveIconResource(R.mipmap.app_home_one)
.setActiveColorResource(R.color.common_color_text_blue))
.addItem(new BottomNavigationItem(R.mipmap.app_shopping_two, "购物车")
.setInactiveIconResource(R.mipmap.app_shopping_one)
.setActiveColorResource(R.color.common_color_text_blue))
.addItem(new BottomNavigationItem(R.mipmap.app_mine_two, "我的")
.setInactiveIconResource(R.mipmap.app_mine_one)
.setActiveColorResource(R.color.common_color_text_blue))
.initialise();
}
enter code here
@Override
public void onPageSelected(int position) {
System.out.println("MainActivity" + "onPageSelected" + position);
bottomNavigationBar.selectTab(position);
}
enter code here
@Override
public void onTabSelected(int position) {
System.out.println("MainActivity" + "onTabSelected" + position);
viewPager.setCurrentItem(position);
}
enter code here
Fragment
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_first,container,false);
enter code here