更改字体后导航栏标题不会保持为粗体

时间:2020-09-02 19:20:32

标签: ios swift fonts swiftui uinavigationbar

我使用此代码(基于this answer)将导航栏标题更改为Apple的纽约衬线字体。

init() {
        // if NavigationBarTitle is with Large Font
        if let newYorkDescriptor = UIFontDescriptor.preferredFontDescriptor(withTextStyle: .largeTitle).withDesign(.serif) {
            UINavigationBar.appearance().largeTitleTextAttributes = [.font : UIFont(descriptor: newYorkDescriptor, size: 0)]
        }
    }

导航栏标题以正确的字体和字体大小显示,但失去了普通导航栏标题的粗体外观。我该如何恢复?我缺少粗体或字体粗细参数吗?

1 个答案:

答案 0 :(得分:1)

bold是字体描述符的一部分,您必须像[p>

UIFontDescriptor.preferredFontDescriptor(withTextStyle: .largeTitle)
     .withDesign(.serif)?.withSymbolicTraits(.traitBold)
相关问题