如何在导航标题视图中居中文本

Posted

技术标签:

【中文标题】如何在导航标题视图中居中文本【英文标题】:How to center text in navigation title view 【发布时间】:2020-04-24 09:39:56 【问题描述】:

我正在尝试让我的导航栏与左右按钮(SF 符号)和标题对齐,以便在视觉上看起来更好,但标题视图中的文本似乎有一些间距或顶部对齐,它使标题看起来更高这不是我想要的。如何使文本居中?

编辑:似乎在使用自定义字体时会发生这种情况,当我尝试系统字体和其他自定义字体时,其中一些字体正确显示

EDIT2:经过进一步调查,原来是字体问题,我使用的设计不居中,即使从下拉菜单中选择字体也可以看到,它也没有在选择中居中

【问题讨论】:

你是如何添加这个标签的? 看来是你的情况***.com/questions/26649909/…。将标签的属性baselineAdjustment 设置为.alignCenters 只使用navigationItem.title = "APP NAME",我在storyboard中设置了自定义字体 @Dmitriy Lupych 我想过,但是如何为导航栏或导航标题设置基线调整,我那里没有自定义标签? 以这种方式将您的自定义标签设置为 navItem:UINavigationItem().titleView = UILabel() 【参考方案1】:

这不是专门针对主题中的问题的答案,而是针对我的问题的答案。

原来我的问题是由自定义字体引起的,该字体在设计下方有空格。所以我最后做的是通过使用这一行来降低导航标题:

navigationController?.navigationBar.setTitleVerticalPositionAdjustment(CGFloat(5), for: UIBarMetrics.default)

【讨论】:

以上是关于如何在导航标题视图中居中文本的主要内容,如果未能解决你的问题,请参考以下文章

如何在导航栏中垂直居中文本?

如何使导航菜单中的文本居中

UINavigationBar标题不水平居中

如何使导航栏的文本居中

如何在 CSS 中将网站导航栏中的文本居中对齐?

如何将导航栏大标题转换为多行,居中对齐