UITabBarController的每个item的title如何不占位置

UITabBarController的每个item不设title的话,那个title还是会占据着最下面那一行的位置,该怎么去隐藏它让那个位置空出来

阅读 10.9k
5 个回答

你可以这样:

//In Your ViewController
[self.tabBarItem setImageInsets:UIEdgeInsetsMake(10, 0, 0, 0)];

用到的是TabBarItem的imageInsets属性:

@property(nonatomic)  UIEdgeInsets imageInsets;  // default is UIEdgeInsetsZero

然后你可以构造一个UIEdgeInsets来设置它的位置偏移:

UIEdgeInsetsMake(CGFloat top, CGFloat left, CGFloat bottom, CGFloat right)

有个问题是,点击此item时,图片大小会一直在改变,是怎么回事呢?

可以换一种方案,调整UIBarItem的imageInsets使图片居中 (我假设你真正想要的是让图片居中显示)

storyboard

新手上路,请多包涵
[self.tabBarItem setImageInsets:UIEdgeInsetsMake(10, 0, -10, 0)];

很重要的一点,设置UIEdgeInsetsMaketopbottom属性为相反数,
否则会发生点击item后拖动,item会发生形变。

新手上路,请多包涵

楼上的解答太良心了 赞楼上!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题