博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android开发之再探底部菜单TabLayout与Bottom navigation实现方式
阅读量:6850 次
发布时间:2019-06-26

本文共 679 字,大约阅读时间需要 2 分钟。

前文中已经对主流的底部菜单实现进行了详细说明,但随着Android版本的升级,Google又推出了更方便的实现方式,此文就来一探究竟。
一、利用TabLayout来实现

TabLayout 我在一文中是用来做顶部菜单的。确实,Google设计出来本意是做顶部菜单的,但是也可以作为底部菜单来使用。注意与前文比较,只需要稍微修改一下Activity的布局:

//占用上面,留出位置给TabLayout

其余地方不用变化,稍微修改一下底部菜单的个数就可以了,我这里就保留了4个,重复的代码我就不贴了,可以参考

效果图:
img_ab89f01d753803d643b97686501583e5.png
TabLayout Bottom.png

注意:这种方式实现起来确实比较简单,不用再自己关联ViewPager与底部菜单的联动。但是这种方式不太好定制指示器的位置,默认指示器在下方,按道理底部菜单的时候应该在上方。我看了很多stackoverflow上面同样的problem,试了都不太好使。如果哪位大侠能比较优雅地解决,可以私信我~~ 偷偷告诉你,在github上有个开源项目

二、利用Bottom navigation设计思路来实现

最近 Google 在Material Design设计规范中加入底部导航栏(Bottom navigation),真是千呼万唤始出来啊,因为Google 给出的设计规范之前一直所提倡的是导航栏等相关要素应置于视图顶部,苹果提倡在底部,这次不知怎么的,妥协了~然并卵,谷歌并没有提供对应的控件来实现,用的比较多的还是github上的一个开源项目

转载地址:http://bjgul.baihongyu.com/

你可能感兴趣的文章
Mysql 数据类型
查看>>
Android抽象布局——include、merge 、ViewStub
查看>>
EF架构~CodeFirst生产环境的Migrations
查看>>
js html 事件冒泡
查看>>
LogUtils.java
查看>>
[APP] Android 开发笔记 001-环境搭建与命令行创建项目
查看>>
C语言中数组名作为参数进行函数传递
查看>>
.Net 提交页面,js修改的Label值会丢掉
查看>>
你真的了解UITableViewCell重用吗?
查看>>
httpd-2.2 配置及用法完全攻略
查看>>
Mininet 跑一个简单的ping测试
查看>>
异常处理的解决方案 OneTrueError
查看>>
QSignalMapper类处理多信号关联同一个槽的方法(2)
查看>>
BZOJ1931 : [Shoi2007]Permutation 有序的计数
查看>>
牛客网java基础知识
查看>>
Nginx的端口修改问题
查看>>
vmware里面的名词 vSphere、vCenter Server、ESXI、vSphere Client
查看>>
使用Delaunay三角剖分解决求多边形面积的问题
查看>>
过大年
查看>>
Android Asynchronous Http Client 中文教程
查看>>