【问题标题】:Custom Font not working in Swift/Xcode自定义字体在 Swift/Xcode 中不起作用
【发布时间】:2016-07-26 21:44:44
【问题描述】:

我的项目中的自定义字体有问题。我尝试了两种方式:通过代码和界面构建器。

我将 TeamSpiritNF.ttf 添加到项目中,并将其添加到 info.plist(应用程序提供的字体)。

然后在我输入的代码中:

self.navigationController?.navigationBar.titleTextAttributes = [ NSFontAttributeName: UIFont(name: "TeamSpiritNF", size: 30)!]

在模拟器中进入屏幕时,应用程序崩溃:

fatal error: unexpectedly found nil while unwrapping an Optional value

但是,例如,如果我将字体名称更改为 Helvetica,同一行也可以正常工作。

如果我在界面构建器中使用此字体作为标签(我可以从下拉列表中选择它),它会在预览中正确显示。但是当我在模拟器中运行应用程序时,进入该屏幕会延迟,并且标签使用 Helvetica Neue 而不是 TeamSpiritNF。

有人知道问题可能是什么吗?

【问题讨论】:

  • 引用的问题有几个答案,准确地列出了在 iOS 应用程序中使用自定义字体所需的操作。

标签: xcode swift fonts


【解决方案1】:
  1. 在您的项目目录中创建一个新文件夹并将您的自定义字体移动到那里。
  2. 在左侧边栏中,选择您的目标,然后选择 Build Phases,您应该会看到 Copy Bundle Resources
  3. 确保您的字体包含在列表中。如果不是,请单击 + 按钮将其包含在内。

【讨论】:

  • 解决方案对我不起作用仍然出现相同的错误致命“错误:在展开可选值时意外发现 nil”
  • 您是通过代码指定字体的名称,对吗?如果是这样,可能你的字体名称有误。
  • 我已经复制粘贴了字体名称。当我通过故事板使用相同的字体时,它们工作正常
【解决方案2】:
  1. 确保您的字体在 info.plist(应用程序提供的字体)中
  2. 选择您的目标,在构建阶段选项卡中,复制捆绑资源,添加您的字体。

【讨论】:

  • 我的字体工作正常,但在我尝试清理 osx 字体缓存后,它停止工作。无论出于何种原因,添加它都会使事情恢复正常。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-09
  • 1970-01-01
  • 2018-08-28
  • 2015-10-03
  • 2012-09-11
  • 1970-01-01
相关资源
最近更新 更多