我有一个UILabel应该在多行上显示文本,以防太长而不能停留在一行上。这是我在界面构建器中设置其参数的方式:
但是即使这样做,文本仍然会被截断:
这是我在运行时设置文本的方式:
let text = "left button pressed 5 seconds ago, you may want to press another button now"
let attributedText = NSMutableAttributedString(string: text)
attributedText.addAttribute(NSFontAttributeName, value: UIFont.boldSystemFontOfSize(statusLabel.font.pointSize), range: (text as NSString).rangeOfString("left"))
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineBreakMode = .ByWordWrapping
attributedText.addAttribute(NSParagraphStyleAttributeName, value: paragraphStyle, range: NSMakeRange(0, attributedText.length))
statusLabel.attributedText = attributedText
就像您看到的那样,我什至尝试添加一个段落样式属性来强制文本停留在多行上,但这是行不通的。
最佳答案
检查您是否设置了自动布局约束,以便您定义了顶部,前部和尾部空间,但不要连接垂直高度,标签会根据内容进行自我调整。
编辑:
关于ios - 无法使UILabel的文本停留在多行上,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28914770/