【问题标题】:Xcode "Navigation Bar" font issueXcode“导航栏”字体问题
【发布时间】:2016-04-21 07:15:12
【问题描述】:

我的问题是导航栏的标题不会采用自定义字体。我认为字体有效,因为标签和按钮字体没有问题。 “main.storyboard”中的字体看起来不错,但是当我运行模拟器或将应用程序安装到手机时,导航栏中的字体不正确。请看下面的图片。有没有人遇到过同样的问题?

我使用的是 Xcode 7.2.1。用 SWIFT 写作

Screen shot: main.storyboard

Screen shot: simulator

【问题讨论】:

  • 创建一个带有标签的视图 :) 应用您想要的任何字体并将其设置为导航栏标题视图 :) 就是这样 :) 问题已解决:P
  • 谢谢。那会奏效。但仍然试图弄清楚我遇到了什么问题。或者它是导航栏的错误。再次感谢
  • 这不是唯一的方法,伙计:) 但肯定更容易,所以我建议它:) 你提到你已经使用带有标签的自定义字体:) 这就是我说的原因使用自定义标签并将字体设置为 titleview :) 根据您的问题,这是导航栏的错误吗?不 :) 不是 :) 我只是建议解决方法 :) 不是唯一的方法 :D 快乐的编码伙伴 :)
  • 谢谢。我将暂时完成这项工作并继续前进。

标签: ios xcode fonts


【解决方案1】:

您不会在代码中的某处覆盖字体设置吗?您也可以尝试通过代码设置 - 例如:

UINavigationBar.appearance().titleTextAttributes = [
    NSFontAttributeName: UIFont(name: "ProximaNova-Semibold", size: 18)!,
    NSForegroundColorAttributeName : UIColor(red: 51/255, green: 51/255, blue: 51/255, alpha: 1),
    NSBackgroundColorAttributeName: UIColor.whiteColor()
]

【讨论】:

  • 我还没有写任何代码。刚开始我的应用布局,就发现了这个问题。我想我可以在不进行任何编码的情况下更改属性检查器中的字体。谢谢。
  • OK - 恕我直言,通过代码全局设置它更方便,因此每个导航栏都将具有相同的外观,您无需在情节提要中一一处理。享受编码;)
  • 谢谢马丁。我尝试了您提供的示例代码,构建似乎成功,但在此行中收到错误消息: UINavigationBar.appearance().titleTextAttributes = [NSFontAttributeName: UIFont(name: "bgothm", size: 25)!] 。收到一个致命错误:在展开可选值时意外发现 nil
  • 唯一可能为 nil 的属性是 UIFont,所以我认为您没有正确注册(或命名)字体“bgothm”。
  • 是的。你说的对。当我使用其他字体时。代码工作正常。我从 Mac 的字体书中得到了字体“bgothm”。需要弄清楚为什么这种字体在导航栏中不起作用,但在标签和按钮中起作用。谢谢。
【解决方案2】:

设置导航栏标题字体如下:

目标 C:

[[UINavigationBar appearance]setTitleTextAttributes:@{NSFontAttributeName:[UIFont fontWithName:@"VarelaRound" size:18],NSForegroundColorAttributeName:[UIColor whiteColor]}];

斯威夫特:

 UINavigationBar.appearance().titleTextAttributes = [    NSFontAttributeName: UIFont(name: "VarelaRound", size: 18)!]

在 info.plist 中添加以下内容以在您的应用程序中使用字体。

希望对你有帮助..

【讨论】:

  • 谢谢。这行得通。但是我的字体文件有问题。
  • 在 xcode 项目中导入字体文件,并在 info.plist 中添加字体。我会分享截图。如果您对答案感到满意,请将其标记为正确。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-09
  • 2012-03-26
  • 1970-01-01
  • 2020-02-22
  • 1970-01-01
相关资源
最近更新 更多