iOS 使用第三方字体不生效

iOS中使用第三方字体并不复杂,通常只需要如下三个步骤:
  1. 将第三方字体文件添加到工程(Project)中;
  2. 在info.plist中添加一个新的键"Fonts provided by application",类型设置为NSArray, 并将第三方字体文件名加到item 》Value中。


    image.png
  3. 在需要使用第三方字体的代码中设置:
    UILabel *numLabel=[[UILabel alloc]initWithFrame:CGRectMake(0, 0, 200, 45)];
    numLabel.font=[UIFont fontWithName:@"Miso-Light" size:38.0f];
    但是设置完成后却怎么都不生效,debug了半天才发现是因为将第三方字体拖入工程中时,在弹出的添加文件窗口中没有勾选“Add to targets”。
image

所以虽然第三方字体文件在工程中,却没有被添加到 Target > Build Phases > Copy Bundle Resources中。于是,手动把第三方字体文件添加进去,重新build,第三方字体就生效了。

  1. 检查是否可用
    如果在代码中用UIFont等添加字体,字体名称要用图中2所显示的名字。【很重要、很重要、很重要】


    image.png
  2. 和UI确认字体
for fontfamilyname in UIFont.familyNames {
     print("family:'\(fontfamilyname)'")
     for fontName in UIFont.fontNames(forFamilyName: fontfamilyname) {
           print("\tfont:'\(fontName)'")
     }
     print("-------------")
 }

你可能感兴趣的:(iOS 使用第三方字体不生效)