超简单的几行代码搞定Android底部导航栏功能-创新互联
超简单,几行代码搞定Android底部导航栏—–应项目需求以及小伙伴的留言,新加了两个方法:
创新互联公司长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为闵行企业提供专业的网站建设、做网站,闵行网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。- 设置底部导航栏背景图片
- 添加底部导航栏选项卡切换监听事件
底部导航栏的实现也不难,就是下边是几个Tab切换,上边一般是一个FrameLayout,然后FrameLayout中切换fragment。
网上有不少关于Android底部导航栏的文章,不过好像都只是关于下边Tab切的,没有实现Tab与fragment的联动,用的时候还要自己手写这部分代码,对我这个比较懒(据说,懒是程序员的一种美德_#)得程序员来说,这是不能忍的。
下边就来说说我的BottomTabBar吧。
这就是我以前封装过的BottomTabBar的效果图,现在就从这张效果图开始,先分析一下,都需要设置那些参数吧。
1、BottomTabBar的整体背景
虽然一般这里都是用白色或者接近白色的浅色调作为背景,但我们也不能给他固定死,要提供这样的一个方法,让使用者可以把背景设置成任何的颜色。
2、图片
这里不仅要传入一个图片,还要做图片做一些设置:
- 图片的宽高尺寸(这个也需要对外设置一个方法)
- 图片得设置居中,这个直接固定写死就好了,我见过的应用都是设置居中的,没见过别的情况,个人感觉,不设置居中也不美观啊
3、 文字
与图片类似,文字也需要做一些设置:
- 文字的大小
- 文字也是需要设置居中的,也像图片一样固定写死
4、 颜色
文字和图片的颜色都是只有两种,一种是选中状态下的,一种是未选中的,我们可以在这里统一设置,提供一个方法就可以了
5、边距
这里需要设置三个地方的边距:
- Top边距,也就是图片与上边分割线的距离
- middle边距,也就是图片与文字的距离
- Bottom边距,也就是文字与底部的距离
6、分割线
上边说到了,图片上边需要设置分割线,当然,这只是部分使用者需要设置的,所以我们需要提供一个方法,用来设置是否显示分割线。此外还要设置分割线的高度以及其背景颜色
7、fragment
我这个BottomTabBar既然是要与fragment联动的,所以必须要传入一个fragment
大体的参数就是需要这些了,下面上代码:
GitHub代码连接
用法也简单,就像标题说的几行代码就可以搞定:
引用方式:
compile 'com.hjm:BottomTabBar:1.0.0'
文章题目:超简单的几行代码搞定Android底部导航栏功能-创新互联
标题路径:http://cdiso.cn/article/cecpgd.html