首页 > 解决方案 > 如何使用 UITabBarController 实现此布局

问题描述

我正在以编程方式构建一个 UITabBarController 并且需要以以下方式对齐我的标签栏图标/文本。

这可能吗?我不确定我应该改变哪些属性?

在此处输入图像描述

标签: swiftuitabbarcontroller

解决方案


您可以尝试移动您的标题和图像UITabBarItem

首先将整个标题向左和向上移动

在此处输入图像描述

然后将图像向右和向下移动

在此处输入图像描述


在此处输入图像描述

...请注意,这适用于自定义图像,而不适用于系统项目


现在您可以更加懒惰并创建自定义子类UITabBar

class CustomTabBar: UITabBar {
    override func awakeFromNib() {
        items?.forEach {
            $0.titlePositionAdjustment = UIOffset(horizontal: -20, vertical: -20)
            $0.imageInsets = UIEdgeInsets(top: 3, left: 30, bottom: -3, right: -30)
        }
    }
}

推荐阅读