支持iOS 6的iOS7应用程序上的自定义字体



我制作了一个应用程序,它有几种自定义字体,但我很难让它在ios6设备上运行,我已经在myApp-Info.plist中添加了它们,它在标签和按钮上以及除了ios7中的uiwebview之外的任何地方都能正常工作,但在ios7中,它看起来像是所有地方的默认字体,整个应用程序的字体没有变化。经过几周的搜索,仍然没有找到任何可行的答案。

这是我为标签分配字体的代码:

titleLable.font=[UIFont fontWithName:@"B Yekan" size:17];

我刚刚也遇到了这个问题,发现在iOS7中,字体名称不区分大小写;也就是说,我试图使用"ChunkFive Roman",它在iOS 7中运行,尽管我的代码说"ChunkFive Roman"。

然而,这在iOS 6中不起作用……我改为使用默认字体。将字体名称更改为"ChunkFive Roman"修复了它,使文本在两者中都能正确显示。(注意——在这两种情况下都使用模拟器)。

你必须遵守这个链接中的规则,一旦你做到了,你就可以了。。

  1. 将自定义字体添加到项目中,即从finder将字体的ttf文件(CALIBRIZ_0.TTF)拖动到资源文件夹中,并选中"将文件复制到项目文件夹"选项。)

  2. 编辑Info.plist:使用应用程序提供的关键字体添加新条目。

  3. 对于每个文件,将文件名添加到此数组(应用程序提供的字体)

现在将字体设置为标签:

MyLabel.font = [UIFont fontWithName:@"Calibri" size:16];

http://blog.builtwithlogic.com/post/73503283890/installing-custom-fonts-on-iphone-and-ipad-ios-devices

介绍如何添加字体-有点困惑,尽管你的问题特别提到iOS6和UIWebView-有兴趣知道你的意思吗?

您是否尝试过使用UIAppearance设置字体?或者你是不是对字体进行了子类化和修改,因为你可能还没有这样做。你能提供一些代码来展示你是如何在整个应用程序中设置自定义字体的吗?

如果你还没有,我会确保你已经遵循了那封电子邮件中的步骤,然后在UIFont中添加一个自定义类别,以传递回特定的字体。如果你还没有这样做,我还会在UIAppearance中为你的标签、标题等设置字体。这是在整个应用程序中最干净、最有效的方法,因为你只需要设置一个,你可以根据标签的显示方式进行不同的设置,例如在导航栏等的表视图中。

这是官方文档的链接https://developer.apple.com/library/ios/documentation/uikit/reference/UIAppearance_Protocol/Reference/Reference.html

感激这个问题已经过时了,但我很想知道这是否有帮助。

我遇到了类似的问题,自定义字体可以在iOS7中使用,但不能在iOS6中使用。

对我来说,解决方案是使用真正的字体名称,而不是文件名。要执行此操作,请检查OSX的FontBook中显示的字体名称。

iOS7允许我使用文件名(减去.ttf后缀),但iOS6需要FontBook中显示的真实字体名称。

例如,名为CustomFont.ttf的字体….

我按照其他人在这里列出的所有步骤将字体添加到我的应用程序中,但随后将其引用为@"CustomFont"。

当我把这个字体添加到我的mac中,并在FontBook(mac实用程序)中查看它时,它实际上被命名为@"自定义字体"——有一个空格和一个小写字母。

希望这能帮助其他人:-)

iOS6无法自定义字体。这是一项仅在iOS 7中可用的新功能。

最新更新