繁体   English   中英

UITabBarItem标题位置

[英]UITabBarItem title position

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

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

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

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

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

Swift版本为懒人:)

UITabBarItem.appearance().titlePositionAdjustment = UIOffsetMake(0.0, -4.0)

为什么不为视图控制器设置空标题属性并将标题添加到标签的自定义图像?

你可以这样做(在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];

其中tabIconSelected.pngtabIconNotSelected.png都包含选项卡的标题文本。

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

希望这可以帮助。

目标C的全球调整:

[[UITabBarItem appearance] setTitlePositionAdjustment:UIOffsetMake(0, -4)];

如果您想要更新所有这些:

tabBar.items?.forEach({ $0.titlePositionAdjustment = UIOffset(horizontal: 0.0, vertical: -2.0) })

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM