我使用此代码(基于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)]
}
}
导航栏标题以正确的字体和字体大小显示,但失去了普通导航栏标题的粗体外观。我该如何恢复?我缺少粗体或字体粗细参数吗?
答案 0 :(得分:1)
bold
是字体描述符的一部分,您必须像[p>
UIFontDescriptor.preferredFontDescriptor(withTextStyle: .largeTitle)
.withDesign(.serif)?.withSymbolicTraits(.traitBold)