UITabBar 图标在 iPad 上偏离中心

Posted

技术标签:

【中文标题】UITabBar 图标在 iPad 上偏离中心【英文标题】:UITabBar icons are off-center on iPad 【发布时间】:2018-09-28 10:43:00 【问题描述】:

如何确保我的自定义标签栏图像位于 UITabBarItems 的中心? 这是我的代码:

[self.tab.tabBar.items[0] setImage:[UIImage imageNamed:@"homeIcon"]];
[self.tab.tabBar.items[0] setAccessibilityLabel:@"Home"];
[self.tab.tabBar.items[1] setImage:[UIImage imageNamed:@"searchIcon"]];
[self.tab.tabBar.items[1] setAccessibilityLabel:@"Search"];

[self.tab.tabBar.items[2] setAccessibilityLabel:@"Add"];
[self.tab.tabBar.items[3] setImage:[UIImage imageNamed:@"explore-standard"]];
[self.tab.tabBar.items[3] setAccessibilityLabel:@"Messages"];
[self.tab.tabBar.items[4] setImage:[UIImage imageNamed:@"profile"]];
[self.tab.tabBar.items[4] setAccessibilityLabel:@"Profile"];

[self.tab.tabBar.items[0] setSelectedImage:[UIImage imageNamed:@"home-thick"]];
[self.tab.tabBar.items[1] setSelectedImage:[UIImage imageNamed:@"search-thick"]];
[self.tab.tabBar.items[3] setSelectedImage:[UIImage imageNamed:@"explore-thick"]];
[self.tab.tabBar.items[4] setSelectedImage:[UIImage imageNamed:@"user-thick"]];

[self.tab.tabBar.items[0] setTitle:nil];
[self.tab.tabBar.items[1] setTitle:nil];
[self.tab.tabBar.items[2] setTitle:nil];
[self.tab.tabBar.items[3] setTitle:nil];
[self.tab.tabBar.items[4] setTitle:nil];

【问题讨论】:

您是否尝试过使用 itemPositioning?在 viewDidLoad 中试试这段代码self.tab.tabBar.itemPositioning = UITabBarItemPositioningFill; 是的,我试过itemPositioningFill、UITabBarItemPositioningCentered和自动,对结果没有影响。 尝试在所有视图上添加不同的背景颜色,以便我们可以看到谁被移动了。 我似乎已经修复了它,而不是 [self.tab.tabBar.items[0] setTitle:nil];你需要把 [self.tab.tabBar.items[0] setTitle:@""]; 您的图像可能有空白填充。在 GIMP 或其他工具中检查它是否已正确修剪。 【参考方案1】:

像这样设置nil 标题

[self.tab.tabBar.items[0] setTitle:nil];

导致图标偏离中心。

你需要像这样设置一个空字符串:

[self.tab.tabBar.items[0] setTitle:@""];

【讨论】:

谢谢!这也适用于 Interface Builder 中的 Title set。我通过将光标放在标题字段中并在键盘上按 Enter 来解决此问题

以上是关于UITabBar 图标在 iPad 上偏离中心的主要内容,如果未能解决你的问题,请参考以下文章

自定义颜色的 UITabBar 图标

为啥标签栏项目图标不在 iPad 设备的中心?

使Angular Material图标的中心居中[重复]

具有垂直对齐图像的自定义 UITabBar

UITabbar在iPad和iPhone上出现Chang

UITabBar ios7 模糊无法在 iPad 3 上运行