2016-07-26 15 views
1

我下面不工作 Download here and test自定义字体在IOS(杂项文件类型)没有显示

我添加了所有OTF文件中的.plist并使用名称设置字体的使用代码字体圣Fransico字体经理如下

lbl_1.font = [UIFont fontWithName:@"SFUIDisplay-Bold" size:20]; 
lbl_2.font = [UIFont fontWithName:@"SFUIDisplay-Medium" size:20]; 
lbl_3.font = [UIFont fontWithName:@"SFUIText-Light" size:20]; 
lbl_4.font = [UIFont fontWithName:@"SFUIText-Regular" size:20]; 
lbl_5.font = [UIFont fontWithName:@"SFUIText-Semibold" size:20]; 

注:我下载使用ZIL答案

+0

是否在项目中添加了otf文件? –

+0

我添加了一个相当完整的答案,我希望你找到你需要的内容:) –

回答

3

有对字体不工作常犯的错误,让我全部列出来,我敢肯定你会发现你的问题:

  • 确保您已经添加的字体在您的项目,你可以在XCode中看到它们。您可以将它们放入根文件夹或特定文件夹中。

  • 确保他们已经正确的目标,或者说他们实际上有一个目标在所有的;)在方框里打勾,你是好

看这个图像点1 & 2。 fonts are in the right folder and have correct target

  • 确保您的图像包括作为当前捆绑的资源:

enter image description here

  • 确保您引用它们在你的.plist文件,如果他们是在一个文件夹cusotm,我敢肯定,你需要写下来的相对路径,不仅名字。

enter image description here

  • 确保您使用正确的字体名称,你可以找到使用下面的代码片段:

的Objective-C:

for (NSString* family in [UIFont familyNames]) 
{ 
    NSLog(@"%@", family); 

    for (NSString* name in [UIFont fontNamesForFamilyName: family]) 
    { 
     NSLog(@" %@", name); 
    } 
} 

Swift:

for family: String in UIFont.familyNames() 
{ 
    print("\(family)") 
    for names: String in UIFont.fontNamesForFamilyName(family) 
    { 
     print("== \(names)") 
    } 
} 

完成后请不要忘记删除该代码。这将帮助您确保您确实使用了正确的字体名称,这有时会与使用OSX的字体浏览器看到的实际名称有所不同。

注意:如果您的字体不打印,这意味着他们不在项目中,如果他们打印,这意味着您没有成功加载它们,但他们在项目中。这个特定的步骤可以帮助您查明问题。

enter image description here

  • 实际使用的字体:

    UIFont myFont = [UIFont fontWithName:@"QuicksandDash-Regular" size:35]; 
    

感谢Chris的实际技巧

我100%确定的正确答案是在某处在这里,所以要确保你的一切都是正确的。除非您对使用字体做了特定的处理,否则重复这些步骤应该足够了。 您可以尝试使用空白项目并比较结果,这在遇到“无法解决的问题”时经常会有所帮助

+0

SF无法检查使用下载链接 – iphonemaclover

1

步骤1中的.ttf及其工作: 确保在项目中添加的字体。

第2步: 确保在info.plist添加字体

第3步: 确保在Copy Bundle Resources添加字体 enter image description here

1

步骤1:确保您添加字体文件在项目中。

第2步:在AppDelegate中运行以下代码并检查您获得的字体名称。

for (NSString *familyName in [UIFont familyNames]){ 
    NSLog(@"Family name: %@", familyName); 
    for (NSString *fontName in [UIFont fontNamesForFamilyName:familyName]) { 
     NSLog(@"--Font name: %@", fontName); 
    } 
} 

可能是字体名称是不同的,那么你正在使用。

+0

是它显示在其中,我的字体类型是.otf – iphonemaclover

+1

@iphonemaclover:尝试使用ttf文件,然后... –