关于底部导航栏使用CommonTabLayout,需要动态加载tab页的问题

之前也有这个问题,但是由于需要动态加载的页面不是很多,比如说有5个fragment对应底部导航栏ABCDE。需要根据用户的角色权限去动态的加载,那么有的用户权限是4个,就有可能是ABDE或者BCDE,有的是三个 有的是两个。当时是自己写了一长串的if语句去判断。可现在又增加了一些权限,就不得不正视这个问题了。

最简单的写法就是有多少个权限就去加载多少个页面,所有的导航栏都写满。满上!然后再去将没有的权限对应的tab不占位隐藏掉就好了。把CommonTabLayout拉出来看了一下,没有找到子控件并去隐藏的方法,ok~那拉出来自己干。

这是对象需要实现的接口属性,只有三个 一个是tab的标题 一个是选中的图标 一个未选中的图标 。那我们自己加一个是否隐藏tab的属性

然后我们复制一个CommonTabLayout类出来,在notifyDataSetChanged方法里面加上对隐藏属性的判断

这样我们在setTabData的时候赋值true和false就可以了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值