我有一个标签,其中有文本,应该是粗体和其他字体大小。是否有可能像使用命令的换行符(“Hello \ n World!”)那样做,或者我是否必须为此制作另一个标签?
谢谢!
答案 0 :(得分:6)
查看NSAttributedString的API - 它允许您创建一个字符串,该字符串指定应使用特定文本样式和/或字体设置样式的字符串部分。通过设置标签的UILabel
属性而不是通常的attributedText
属性,可以使用生成的对象而不是带有text
(和其他UI元素)的纯字符串。
要在 18磅粗体中显示“粗体”字样,请尝试以下操作:
var label = UILabel()
let bigBoldFont = UIFont.boldSystemFontOfSize(18.0)
var attrString = NSMutableAttributedString(string: "This text is bold.")
attrString.addAttribute(kCTFontAttributeName, value: bigBoldFont, range: NSMakeRange(13, 4))
label.attributedText = attrString
指定的范围确定应该应用命名属性(在本例中为字体)的字符串部分。请注意,NSMakeRange的参数是起始字符位置和范围的长度。