编辑:我明白了!答案发布在下面。谢谢JSD!
我必须遗漏一些东西,因为我认为这是一个相当简单的过程。我已经将字体复制到我的项目文件夹中。我试图在表格单元格的UILabel中使用此代码:
UILabel *cellTitle = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 300, 40)];
cellTitle.font = [UIFont fontWithName:@"Source Sans Pro Black" size:50];
[cell.contentView addSubview:cellTitle];
它似乎不起作用。文本显示但不包含自定义字体。我错过了什么?
编辑:显然,如果我使用此代码
cellTitle.font = [UIFont fontWithName:@"Source Sans Pro" size:50];
这样可行,但仅使用我的pList文件数组中的最后一个字体,这只是该字体的常规版本。有没有人曾经遇到过这个问题?
这些代码都不起作用:
cellTitle.font = [UIFont fontWithName:@"Source Sans Pro Bold" size:50];
cellTitle.font = [UIFont fontWithName:@"Source Sans Pro Regular" size:50];
这是我的字体书中的字体:
PList文件:
答案 0 :(得分:2)
确保将字体名称添加到info.plist
文件
答案 1 :(得分:1)
将字体添加到项目中。然后,在info.plist文件中,添加一个名为Fonts provided by application
的节作为数组类型,每个字体都列在自己的行中...... Item0,Item1等。
在代码中加载字体时,您可以像往常一样加载它:
[myUILabel setFont:[UIFont fontWithName:@"MyFontname" size:14]];
。通常你会使用postscript名称,可以使用Mac上的FontBook应用程序来发现。
答案 2 :(得分:1)
根据我对自定义字体的使用,您的plist字体名称应该与Font Book中的字体显示方式相匹配,该字体也应与fontWithName
方法匹配。在您的情况下,我希望在这两个地方看到Source Sans Pro Black
,特别是您的plist Source Sans Pro Black.otf
和代码中的cellTitle.font = [UIFont fontWithName:@"Source Sans Pro Black" size:50];
。
答案 3 :(得分:1)
我刚刚开始工作!感谢JSD指导我正确的方向。显然,问题是XCode如何重命名同一系列中的字体变体。
使用字体簿名称不起作用!!!
你实际上必须看看Xcode如何命名字体。为此,您必须运行日志命令:
NSLog(@"%@", [UIFont fontNamesForFamilyName:@"Source Sans Pro"]);
给了我这个:
此代码有效:
cellTitle.font = [UIFont fontWithName:@"SourceSansPro-Black" size:50];