我决定以正确的方式设计自定义导航栏。我的导航栏的标题应该输入大小为23的自定义字体“Din Condensed”。所以我写了这段代码:
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navigation_background.png"]
forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setTitleTextAttributes:@{
UITextAttributeTextColor: [UIColor whiteColor],
UITextAttributeFont: [UIFont fontWithName:@"PFDinTextCondPro-Bold" size:23]
}];
但看起来标题标签不适合使用此字体的文字:
如何使用外观API更改UINavigationBar标题的大小?我想避免使用自定义titleView。
答案 0 :(得分:4)
无法更改其字体大小。至少不是我所知道的。导航栏将自动调整默认标题标签的字体大小,以适合纵向或横向。
因此您需要自定义标题视图。但它很简单;只需要将导航项titleView
设置为您的标签。
多行示例:UINavigationBar multi-line title
单行但不同字体的示例:https://stackoverflow.com/a/10171426/894671
祝你好运!答案 1 :(得分:0)
您是否尝试setTitlePositionAdjustment
来解决此问题?如果这不起作用,我认为最好的方法是使用您想要的字体自定义UILabel
,并将其用作导航栏的titleView
(自定义视图)属性。
答案 2 :(得分:0)
在故事板中设置标题字体。
现在它不应该削减你的标题标签。