在保持默认大小的同时更改 UINavigationBar 字体类型

Changing UINavigationBar Font Type while keeping the default size

我知道要更改 UINavigationBar 的字体,他只需

self.navigationController!.navigationBar.titleTextAttributes = [NSFontAttributeName: UIFont(name: "MavenProBold", size: 15)!, NSForegroundColorAttributeName: UIColor.whiteColor()]

不过,我正在尝试仅更改字体类型,并保持 iOS 默认字体大小(我猜他在设备之间是动态的)。 有什么建议吗?

如果更改字体类型,则必须指定字体大小。通常您必须手动执行此操作。

如果你想匹配你看到的另一种字体的大小,比如另一个 UILabel,你可以这样做:

CGFloat fontSize = self.label.font.pointSize; // obj-c
let fontSize = CGFloat(label.font.pointSize) // swift

然后将你设置的字体大小指定为这个。

更新

查了一下,UINavigationBar的常用字号是34px,在你的Xcode编辑器里是17。请记住,您可以手动覆盖此视图,但这是默认字体大小。