设置标签字体用粗体和斜体

时间:2016-04-18 18:46:53

标签: ios swift fonts nsmutableattributedstring

我正在尝试将我的标签的特定部分设置为粗体和斜体org.apache.commons.lang3.ArrayUtils.reverse(byte[]),但我只能得到一个或另一个。我使用的字体是Clear Sans。将故事板上的整个标签字体设置为byte[]可以正常工作,但我只需要它的一部分。所以我用了

BigInteger bi = new BigInteger("1379080579050447841330186236235223160927998000398161138225875482305250883605652677639242794753995315199229112894647269426499088162253680340518114657361569012095908691691924534414360438924914998");
byte[] ba = bi.toByteArray();
reverse(ba);
for (int i = 0; i < ba.length; i++) {
    System.out.print(ba[i] + " ");
}
// 54 49 48 50 47 52 48 47 49 50 32 111 110 114 111 105 103 32 44 98 117 108 67 
// 32 97 116 105 118 69 32 44 101 108 97 117 113 115 97 80 32 101 110 111 105 108 
// 103 101 86 32 111 116 110 101 118 69 32 44 52 57 57 49 47 56 48 47 49 50 32 44 
// 105 115 115 111 82 32 111 99 114 97 77 

确保它在那里,我找到了

NSMutableAttributedString

出于某种原因,它不在这里,但它在故事板中。所以我尝试使用this answer,但它崩溃了,我假设我没有找到Bold Italic,但我不知道为什么它不在那里。

最后,我试图“堆叠”两者,就像这样

for family in UIFont.familyNames() {
    print("\(family)\n\t\(UIFont.fontNamesForFamilyName(family))")
}

但所有这一切都是使用最后一个属性,这是我所期望的。

我是否可以使用其他方法来做到这一点,以便在标签的同一部分显示粗体和斜体?

修改

我想要包含项目中的字体,所以很明显我已经导入了它们。第二个图像是故事板上的字体列表。虽然它被掩盖了,但实际上这个家庭是Clear Sans ["ClearSans", "ClearSans-Bold", "ClearSans-Italic"]

Installed fonts Storyboard options

2 个答案:

答案 0 :(得分:3)

确保在UIAppFonts(&#34;应用程序提供的字体&#34;)键下的应用程序信息列表中添加粗体斜体版本。

答案 1 :(得分:0)

UIFont.italicSystemFont(ofSize: 15.0)
UIFont.boldSystemFont(ofSize: 15)

如果你想自定义喜欢系统的标签字体。你可以尝试我的解决方案。 它适用于swift 3