我在xib文件上有一个UILabel,我想增加文本的行间距。
我试着写,但是下面的代码只调用了文本对齐,行间距保持不变。为什么不调用“paragraphStyle.lineSpacing”?
class PlaySheetCellLeft: UITableViewCell {
@IBOutlet var LBLTitle:UILabel!
var message:[String:Any]? {
didSet{
guard let msg = self.message else { return }
self.LBLTitle.text = title
}
override func awakeFromNib() {
super.awakeFromNib()
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineSpacing = 10
let attrString = NSMutableAttributedString()
attrString.addAttribute(NSParagraphStyleAttributeName, value:paragraphStyle, range:NSMakeRange(0, attrString.length))
LBLTitle.attributedText = attrString
LBLTitle.textAlignment = NSTextAlignment.center
}
}
答案 0 :(得分:0)
您正在使用空的属性字符串创建范围,因此不会在任何内容上设置样式。
创建范围时,您实际上是在创建这样的范围:NSMakeRange(0, 0)
。
您应该将字符串传递给可变属性字符串的创建,如下所示:NSMutableAttributedString(string: "your string")
您还需要在设置标签文字时设置此项,而代码的外观不在awakeFromNib