Cod*_*ess 5 fonts ios nsmutableattributedstring swift
我正在尝试使用 将标签的特定部分设置为粗体和斜体NSMutableAttributedString,但我只能得到一个或另一个。我使用的字体是 Clear Sans。将故事板上的整个标签字体设置为Bold Italic正常工作,但我只需要其中的一部分。所以我用
for family in UIFont.familyNames() {
print("\(family)\n\t\(UIFont.fontNamesForFamilyName(family))")
}
Run Code Online (Sandbox Code Playgroud)
以确保它在那里,我发现
Clear Sans
["ClearSans", "ClearSans-Bold", "ClearSans-Italic"]
Run Code Online (Sandbox Code Playgroud)
出于某种原因,它不在此处,而是在故事板中。所以我尝试使用这个答案,但它崩溃了,我认为与我没有找到的原因相同ClearSans-BoldItalic,但我不知道为什么它不在那里。
最后,我试着像这样“堆叠”两者
let bold = UIFont(name: "ClearSans-Bold", size: 20)
let italic = UIFont(name: "ClearSans-Italic", size: 20)
attributedCaption.addAttribute(NSFontAttributeName, value: bold!, range: (imageContainer.caption as NSString).rangeOfString(matchString))
attributedCaption.addAttribute(NSFontAttributeName, value: italic!, range: (imageContainer.caption as NSString).rangeOfString(matchString))
Run Code Online (Sandbox Code Playgroud)
但所有这些都是使用最后一个属性,这是我期望它做的。
是否有其他方法可以用来执行此操作,以便在标签的同一部分同时显示粗体和斜体?
编辑
我想包含项目中的字体,所以很明显我已经导入了它们。第二张图片是故事板上的字体列表。虽然它被掩盖了,但这个家庭实际上是Clear Sans。
| 归档时间: |
|
| 查看次数: |
8613 次 |
| 最近记录: |