【问题标题】:How to decrease vertical padding between UITabBarItem image and text?如何减少 UITabBarItem 图像和文本之间的垂直填充?
【发布时间】:2023-03-09 00:40:01
【问题描述】:

我想减少 UITabBarItem 与其文本之间的垂直填充:

为了让它看起来像这样:

我试过这段代码:

    let pStyle = NSMutableParagraphStyle()
    pStyle.lineSpacing = -10.0
    UITabBarItem.appearance().setTitleTextAttributes([.paragraphStyle: pStyle], for: .normal)

但它没有用。想法?

【问题讨论】:

标签: ios swift uikit uitabbaritem


【解决方案1】:

用偏移量调整标签栏项目标题的位置。

UITabBarItem.appearance().titlePositionAdjustment = UIOffset(horizontal: 0, vertical: -10)

【讨论】:

  • @Callarm 我必须恭敬地请你把你的名字从 Callam 改成 Magician ?
【解决方案2】:

所选答案在 iOS 15 之前有效。对于 iOS 15 及更高版本,我们必须使用 UITabBarAppearance 设置标题位置调整:

let appearance = UITabBarAppearance()
appearance.stackedLayoutAppearance.normal.titlePositionAdjustment = UIOffset(horizontal: 0, vertical: -10)
tabBar.standardAppearance = appearance
tabBar.scrollEdgeAppearance = appearance

【讨论】: