这个标题,对初学者来说应该是小菜一碟,却让我这个中级菜鸟花了小半天功夫才搞定。先说解决方法再交代前因,设 N 为item个数,tabBarVC 为当前标签控制器,kScreenWidth 为当前屏幕宽度,margin 为item间隔视图宽度 代码如下:
tabBarVC.tabBar.itemWidth = (kScreenWidth - margin * (N - 1)) / N;
tabBarVC.tabBar.itemSpacing = margin;
效果如下图:
前因:使用环信SDK,发现在iPhone中标签栏是没问题的,但在iPad中,item集中在中间,如下图:
未均匀分布图
看到这种效果,脑子一懵就设置tabBarItem的属性imageInsets,发现切换item时并不如意,手指位置会有限制,有兴趣的亲可以设置这个属性试试,自己去看效果就会明白,不多解释。
又各种谷歌还是无解后,无意中在UITabBar.h文件看到itemWidth属性才恍然大悟,其实是多简单的问题,果然像学习时老师说的“看似复杂,半天、一天甚至两天没解决的,其实大多一两行代码就搞定了”。
戒骄戒躁,勿忘初心,要学会换个思路解决问题,为写好每一个项目而奋斗。
网友评论