BottomNavigationBar这个控件的使用之前已经写过,这里不再赘述,详情请参考BottomNavigationBar的使用。

下面直接上代码:

初始化及相关设置:

        mBottomNavigationBar = (BottomNavigationBar) view.findViewById(R.id.bottom_navigation_bar);mBottomNavigationBar.setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_STATIC);mBottomNavigationBar.setMode(BottomNavigationBar.MODE_FIXED);mBottomNavigationBar.addItem(new BottomNavigationItem(R.drawable.home_fill, getString(R.string.item_home)).setInactiveIconResource(R.drawable.home).setActiveColorResource(R.color.colorPrimary).setInActiveColorResource(R.color.black_1)).addItem(new BottomNavigationItem(R.drawable.location_fill, getString(R.string.item_location)).setInactiveIconResource(R.drawable.location).setActiveColorResource(R.color.colorPrimary).setInActiveColorResource(R.color.black_1)).addItem(new BottomNavigationItem(R.drawable.like_fill, getString(R.string.item_like)).setInactiveIconResource(R.drawable.like).setActiveColorResource(R.color.colorPrimary).setInActiveColorResource(R.color.black_1)).addItem(new BottomNavigationItem(R.drawable.person_fill, getString(R.string.item_person)).setInactiveIconResource(R.drawable.person).setActiveColorResource(R.color.colorPrimary).setInActiveColorResource(R.color.black_1)).setFirstSelectedPosition(0).initialise();mBottomNavigationBar.setTabSelectedListener(this);setDefaultFragment();

Tab的切换:

    @Overridepublic void onTabSelected(int position) {FragmentTransaction beginTransaction = getFragmentManager().beginTransaction();switch (position) {case 0:if (mHomeFragment == null) {mHomeFragment = HomeFragment.newInstance(getString(R.string.item_home));}beginTransaction.replace(R.id.sub_content, mHomeFragment);break;case 1:if (mLocationFragment == null) {mLocationFragment = LocationFragment.newInstance(getString(R.string.item_location));}beginTransaction.replace(R.id.sub_content, mLocationFragment);break;case 2:if (mLikeFragment == null) {mLikeFragment = LikeFragment.newInstance(getString(R.string.item_like));}beginTransaction.replace(R.id.sub_content, mLikeFragment);break;case 3:if (mPersonFragment == null) {mPersonFragment = PersonFragment.newInstance(getString(R.string.item_person));}beginTransaction.replace(R.id.sub_content, mPersonFragment);}beginTransaction.commit();}

说明:这几篇文章没有过多的文字叙述,因为这些东西也不是很难,而且都是常用的,相信很多人都了如指掌了,多说亦是废话,直接上代码看的反而更清楚。

DownLoad Demo

Android底部导航栏实现(一)之BottomNavigationBar相关推荐

  1. android fragment 底部菜单栏,一句话搞定Android底部导航栏,一键绑定Fragment、ViewPager...

    现在大多数App都会用到底部导航栏,比如常见的聊天工具QQ.微信.购物App等等,有了底部导航栏,用户可以随时切换界面,查看不同的内容.它的实现方式也很多,以前大多使用TabHost来实现,但是现在我 ...

  2. android 固定底部导航,如何设置android底部导航栏位置固定在android

    请帮我设置底部导航栏位置固定在底部, ,因为我在输入editText字段时遇到问题,底部导航栏向上移动并覆盖其他领域如何设置android底部导航栏位置固定在android 代码: xmlns:and ...

  3. 转载:Android底部导航栏,三种风格和实现

    原文出处 标题:Android底部导航栏,三种风格和实现 作者:阿飞__ 原文链接:Android底部导航栏,三种风格和实现_阿飞__的博客-CSDN博客_android导航栏 一.效果图展示 如果动 ...

  4. Android底部导航栏的三种风格实现

    一.效果图展示 如果动图没有动的话,也可以看下面这个静态图 以下挨个分析每个的实现,这里只做简单的效果展示,大家可以基于目前代码做二次开发. 二.BottomNavigationView 这是 Goo ...

  5. Android底部导航栏切换页面填坑

    ** Android底部导航栏切换页面填坑 ** 这个效果的实现关键点就是给选项赋予两种状态,focused和normal,在主程序中用监听判断是否被选中,就给被选中的选项设focused为true, ...

  6. Android底部导航栏最常用的两种写法

    先来看看底部导航栏的效果 Android 底部导航栏有很多种写法,例如: RadioGroup , Tablayout, TabHost  , LinearLayout + ImageView + T ...

  7. Android底部导航栏+消息提醒

    Android底部导航栏+消息提醒 最近想在网上找一些Android底部导航栏切换并能提供消息提醒的案例,虽然有很多案例但都不是我想要的.我就开始自己瞎研究了,废话不多说了,直接上代码. 1.先创建一 ...

  8. Android 底部导航栏 BottomNavigationBar

    大部分app,都采用导航栏的方式,无论是顶部导航栏还是底部导航栏,这是一个app的根骨,本文是采用Google最近添加到Material design中的底部导航栏BottomNavigationBa ...

  9. android底部导航栏中间凸起,Flutter学习笔记--仿闲鱼底部导航栏带有中间凸起图标...

    仿闲鱼底部导航栏带有中间凸起图标 刚接触Flutter,需要实现一个类似闲鱼APP的底部导航栏的实现 要实现的效果如图: 好的,下面开始上代码了: 一. 在main.dart文件中,定义APP的入口信 ...

  10. Android底部导航栏的四种实现

    现在大多数App都会用到底部导航栏,比如常见的聊天工具QQ.微信,购物App等等,有了底部导航栏,用户可以随时切换界面,查看不同的内容.它的实现方式也很多,以前大多使用TabHost来实现,但是现在我 ...

最新文章

  1. Bengio、Hinton的不懈追求——深度学习算法揭示大脑如何学习
  2. “马踏飞”AI机器人实现方案介绍
  3. 数据结构与算法-----冒泡排序
  4. Function function 隐式function
  5. 话说这发表日志跟聊天似的简单很啊。
  6. MySQL学习笔记2:数据库的基本操作
  7. 使用 Clang Tools —— ClangFormat
  8. java抓取豆瓣网页内容_爬取豆瓣网页上的电影(包括图片,评分,和简介等)
  9. EXCEL 数据透视表的简单使用
  10. Matlab实现一元线性拟合
  11. 微信设置字体后微信浏览器页面字体也会跟着改变的解决办法
  12. Android仿人人客户端(v5.7.1)——个人主页(二)
  13. 学习笔记——STM32摄像头OV7725(二)
  14. 考试 倒计时 php,PHP实现考试倒计时功能代码
  15. rrpp协议如何修改_RRPP(快速环网保护协议)
  16. QCustomPlot 示例实践--带填充的简单衰减正弦函数及其红色的指数包络
  17. css 层叠样式表详解
  18. @JsonFormat @DataTimeFormat 时间格式
  19. 成立 4 年估值 20 亿美金,这家国货美妆找到了新的人口红利
  20. FFmpeg中调用av_read_frame函数导致的内存泄漏问题

热门文章

  1. linux 删除文件_Linux删除文件夹命令有哪些
  2. 亚伦•斯沃茨:提升时间的品质
  3. [JZOJ5866]【NOIP2018模拟9.13】指引
  4. P1556 幸福的路
  5. centos6安装composer
  6. Django 下添加左侧字段显示和搜索
  7. MAC 下配置JavaEE开发环境
  8. C#动态加载dll,dll目录指定
  9. ThinkPHP简单的验证码实现
  10. 《机电传动控制》----学习笔记六