ios – 使用文本设置时,UILabel显示自定义字体错误,但在代码中设置时工作正常

ios – 使用文本设置时,UILabel显示自定义字体错误,但在代码中设置时工作正常,第1张

概述因此,当我使用文本设置为Plain的UILabel时,自定义字体在应用程序和IB中正确显示,但是当我将其设置为属性时,它在IB中看起来很好但在应用程序中却没有. 我以编程方式使用自定义字体到处都有属性字符串,它工作得很好. 我已经通过字体书在我的mac上安装了字体,我已经通过在info.plist和构建阶段的copy resources部分中设置了适当的属性将字体安装到我的应用程序中.我也在使用X 因此,当我使用文本设置为Plain的UILabel时,自定义字体在应用程序和IB中正确显示,但是当我将其设置为属性时,它在IB中看起来很好但在应用程序中却没有.

我以编程方式使用自定义字体到处都有属性字符串,它工作得很好.

我已经通过字体书在我的mac上安装了字体,我已经通过在info.pList和构建阶段的copy resources部分中设置了适当的属性将字体安装到我的应用程序中.我也在使用Xcode 6.1.1

我已经包含了一个说明我问题的sample project

这是在IB中设置的XIB中的标签的HTML.如您所见,它已设置为自定义字体.

<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" usesAttributedText="YES" lineBreakMode="tailTruncation" numberOflines="0" baselineAdjustment="alignBaselines" adjustsFontSizetoFit="NO"translatesautoresizingMaskIntoConstraints="NO" ID="kpn-Ch-m1y">  <rect key="frame" x="20" y="84" wIDth="560" height="100" />  <constraints>    <constraint firstAttribute="height" relation="greaterThanorEqual" constant="100" ID="tyA-gf-Vjj" />  </constraints>  <attributedString key="attributedText">    <fragment content="the attack of the chicken lover">      <attributes>        <Font key="NSFont" size="11" name="HelveticaNeueLTStd-Cn" />        <Font key="NSOriginalFont" size="11" name="HelveticaNeueLTStd-Cn" />        <paragraphStyle key="NSParagraphStyle" alignment="natural" lineBreakMode="worDWrapPing" baseWritingDirection="natural" />      </attributes>    </fragment>  </attributedString>  <nil key="highlightedcolor" />  <variation key="heightClass=compact" ambiguous="YES">    <rect key="frame" x="23" y="84" wIDth="554" height="211" />  </variation>  <variation key="heightClass=compact-wIDthClass=compact" ambiguous="YES">    <rect key="frame" x="23" y="84" wIDth="354" height="211" />  </variation></label>

以下是当您打印叛逆标签的内容时发生的情况,该标签的IB是在IB中设置的.正如你可以看到XIB之间发生的事情,它是一个浓缩的helvetica字体,它是应用程序中的一种,一个helvetica常规字体.

2015-02-25 17:35:09.726 FontTest[25984:360263] Helvetica Nueue Condensed{    NScolor = "UIDeviceWhitecolorSpace 0 1";    NSFont = "<UICTFont: 0x792604b0> Font-family: \".HelveticaNeueInterface-Regular\"; Font-weight: normal; Font-style: normal; Font-size: 14.00pt";    NSParagraphStyle = "Alignment 0,linespacing 0,ParagraphSpacing 0,ParagraphSpacingBefore 0,Headindent 0,Tailindent 0,FirstlineHeadindent 0,lineHeight 0/0,lineHeightmultiple 0,lineBreakMode 4,Tabs (\n    28L,\n    56L,\n    84L,\n    112L,\n    140L,\n    168L,\n    196L,\n    224L,\n    252L,\n    280L,\n    308L,\n    336L\n),DefaultTabInterval 0,Blocks (null),Lists (null),BaseWritingDirection -1,HyphenationFactor 0,TighteningFactor 0,headerLevel 0";}(lldb)
解决方法 您在代码中设置的字体
NSDictionary *attributes = @{NSFontAttributename: [UIFont FontWithname:@"HelveticaNeueLTStd-Cn" size:17]};

在IB中将其更改为HelveticaNeueLTStd-Cn 17.0

是一样的.
查看截图.

我猜你没有设置第一张图片中显示的字体.

总结

以上是内存溢出为你收集整理的ios – 使用文本设置时,UILabel显示自定义字体错误,但在代码中设置时工作正常全部内容,希望文章能够帮你解决ios – 使用文本设置时,UILabel显示自定义字体错误,但在代码中设置时工作正常所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1099113.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存