10

在网上搜索如何调整 UITabBarItem 标题位置的位置时,我浏览了这个类似的帖子,但仍然想知道如何做到这一点。

甚至可以从下向上调整标题位置吗?(例如 5px)我需要这个,因为我有自定义图像,现在标题的位置并不完美。

4

5 回答 5

17

如果要向上移动,只需将垂直偏移设置为负值

UITabBarItem* it = [[self.tabController.tabBar items] objectAtIndex:0];
it.titlePositionAdjustment = UIOffsetMake(0.0, -2.0);

您不必使用代理,因为它在这里完成UITabBarItem 标题在标题中心,而不是在底部。您可以定义每个项目的偏移量。

于 2012-12-18T15:03:28.870 回答
13

懒人的 Swift 版本 :)

UITabBarItem.appearance().titlePositionAdjustment = UIOffsetMake(0.0, -4.0)
于 2016-08-30T11:48:50.100 回答
4

如果要更新所有这些:

tabBar.items?.forEach({ $0.titlePositionAdjustment = UIOffset(horizontal: 0.0, vertical: -2.0) })
于 2019-06-26T18:18:57.470 回答
1

为什么不为视图控制器设置一个空的标题属性并将标题添加到选项卡的自定义图像中?

您可以这样做(在 iOS 5.0 中):

UIImage* iconSelected = [UIImage imageNamed:@"tabIconSelected.png"];
UIImage* iconNotSelected = [UIImage imageNamed:@"tabIconNotSelected.png"];
UITabBarItem *updatesListItem = [[UITabBarItem alloc] initWithTitle:@"" image:iconSelected tag:0];
[updatesListItem setFinishedSelectedImage:iconSelected withFinishedUnselectedImage:iconNotSelected];
[navigationController setTabBarItem:updatesListItem];

wheretabIconSelected.pngtabIconNotSelected.png都包含选项卡的标题文本。

我写了一篇简短的文章“为您的 UITabBar 图标添加一些颜色”,它解释了如何使用带有标签的自定义图像。

希望这可以帮助。

于 2012-04-17T15:02:06.533 回答
1

目标 C 中的全局调整:

[[UITabBarItem appearance] setTitlePositionAdjustment:UIOffsetMake(0, -4)];
于 2017-10-23T13:58:04.880 回答