如何减少 UITabBarItem 图像和文本之间的垂直填充?

Posted

技术标签:

【中文标题】如何减少 UITabBarItem 图像和文本之间的垂直填充?【英文标题】:How to decrease vertical padding between UITabBarItem image and text? 【发布时间】:2018-12-25 12:51:26 【问题描述】:

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

为了让它看起来像这样:

我试过这段代码:

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

但它没有用。想法?

【问题讨论】:

Moving UITabBarItem Image down?的可能重复 【参考方案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

【讨论】:

以上是关于如何减少 UITabBarItem 图像和文本之间的垂直填充?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 中像 UITabBarItem 一样设计 UIButton?

如何在不使项目变灰的情况下禁用 UITabBarItem

更改默认“未选择”UITabBarItem 图像颜色

仅作为 UITabBarItem 的图像

UITabBarItem 更改图像高度和宽度

如何在 UITabbaritem 上设置图像?