2015-11-07 53 views
0

我想用比邻新星Semibold大胆风格。
为此,我已将Proxima Nova,Proxima Nova Semibold和Proxima Nova Bold字体添加到我的应用程序资源中。
我已经在info.plist文件中做了正确的输入,并确保在复制包资源中。 我使用这些字体的方式如下。

如何以编程方式使用CustomFont的风格在IOS

[attributedString addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Proxima Nova" size:12.0] range:NSMakeRange(0, storypart1.length-1)]; 

这适用于我。
但是当我想使用Semibold粗体风格相同的字体我得到错误。 我尝试过的方式使用Semibold粗体风格如下。

[attrString addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Proxima Nova-Semibold" size:12.0] range:NSMakeRange(0, storypart1.length-1)]; 

[attrString addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Proxima Nova Semibold" size:12.0] range:NSMakeRange(0, storypart1.length-1)]; 

但在这两个我收到以下错误。

***终止应用程序由于未捕获的异常 'NSInvalidArgumentException',原因是: 'NSConcreteMutableAttributedString的addAttribute:值:范围::零 值'

请帮我解决这个问题。
在此先感谢。

+1

你尝试登录的字体名称? –

回答

2

请首先打印您的字体名称,然后将您的确切粗体字体名称放入附加值中,并且由于字体为零,应用程序崩溃(您通过的字体未找到)。因此,请以粗体显示同名

NSLog(@"Font %@",[UIFont fontNamesForFamilyName:@"Proxima Nova"]); 

例如

NSLog(@"Font %@",[UIFont fontNamesForFamilyName:@"Arial"]); 

输出:

Font (
    ArialMT, 
    "Arial-BoldItalicMT", 
    "Arial-ItalicMT", 
    "Arial-BoldMT" 
) 
+0

感谢您的支持。我在另一个项目中使用了这个,但我忘记了这一点。 –

相关问题