尽管尺寸正确,但标签栏图标太小

Posted

技术标签:

【中文标题】尽管尺寸正确,但标签栏图标太小【英文标题】:Tab Bar icons too small despite being correct size 【发布时间】:2019-08-12 21:25:42 【问题描述】:

我的标签栏控制器正在使用 75x75 的自定义图像图标,但它们看起来很小。

他们看起来好像没有使用标签栏的整个高度,我不知道为什么。如果我将大小增加到 150x150,则图标不会利用下面的空间,而是会与顶部边框重叠并侵占视图的其余部分。

如何让图标完全居中并使用所有可用的标签栏高度?

主页选项卡图像的资产目录如下所示:

【问题讨论】:

您能展示图片在资产目录中的外观吗? 当然@Andrew 我会更新 OP 图像周围有空白。您需要裁剪图像 您可能希望在 iPhone 8(或任何其他方形屏幕设备)的模拟器中运行此程序,这样您就可以在不受安全区域干扰的情况下查看所有内容。 @Manav 谢谢,我试试看! 【参考方案1】:

75x75 像素的图像图标应该适合@3x 设备。 如果标题为 nil,则图像不会自行展开。

但是您可以使用偏移属性来移动图像。

进入storyBoard中的Size Inspector,改变图片插图的底部偏移。

更多信息请参考此链接

Moving UITabBarItem Image down?

【讨论】:

谢谢@Amyth,我试试看【参考方案2】:

您发布的图片实际上看起来是正确的。标签栏尊重屏幕的安全区域,标签栏按钮与底部的主页指示器的默认距离。

作为对比,这里是 App Store 应用的标签栏:

与您的屏幕截图重叠时,您可以看到图标位置相同:

您可以通过为标签提供标题来改进视觉设计。

如果您希望标签栏按钮不带标题,您可以按照此处所述调整图像插图:Remove tab bar item text, show only image。

确保在具有不同安全区域(例如 iPhone 8)和不同设备方向(如果支持)的设备上测试您的解决方案。

请注意,使用这种方法时,您将违背UITabBarController 的预期设计。一个更健壮和灵活的解决方案可能会用自定义的UIViewController 子类替换UITabBarController

【讨论】:

以上是关于尽管尺寸正确,但标签栏图标太小的主要内容,如果未能解决你的问题,请参考以下文章

我的标签栏项目图标应该是啥尺寸?

使用免费 PNG 图标时选项卡栏项目过大

尽管尺寸正确,但 Facebook 从外部网站共享的图像太小

标签栏未正确显示图像

如何让自定义标签栏显示标签栏项目在 Xcode 中设置的选定图像?

iOS 哪个是标签栏图标的默认 UIColor?