我这里用的是自定义的tabBarController 类. 在 ViewDidLoad方法下,将实例化的UIView 添加进了 tabBar显示.
然后设置 tabBar 的 setViewController 方法,将一些页面设置成了 tabBar 的切换显示页面. 其中mineVC 是我实例化的一个页面. 我也是在这里设置某个页面的 tabBarItem的 image 和 selectedImage.
下面就是修改 tabBarItem 位置的代码:
UIEdgeInsetsMake 的四个参数分别代表 Item 图片距离 tabBarController [上,左,下,右] 四个方向的内边距. (不包括 tabBarItem.title 就是文字).其中 0是默认值, (0,0,0,0)就会在默认的位置显示.
上面代码的意义在: 上下默认显示, 左右在默认位置的左边界向左移动8个点的距离. 但是第四个值为什么也要设置呢? It means 右边界向右增加了8个点的距离. 如果 左边界和右边界的距离不一样 会发生一些很诡异的形变而且每次的点击形状都会变-_-|||.不要问我是怎么知道的.
而且,imageInset 的设置只需要一次, image 和 selectedImage 的位置就都遵守了设置,不需要多次设置.
网友评论