UILabel的文本作为一个整体分配。如果存在多行标签,则可以将一串文本分配给该标签的特定行。
因此我可以执行myLabel.text = "A very long line...."
之类的操作而不是myLabel.text.line[0] /*(or [1] or whatever)*/ = "One line from my whole string"
吗?
答案 0 :(得分:4)
您可以使用" \ n"
在字符串中添加换行符myLabel.text = "A \n very long \n line"
注意:将标签的行数设置为0,以允许任意数量的行。
myLabel.numberOfLines = 0
答案 1 :(得分:2)
您可以创建一个行数组,然后将文本分配给这样的行:
var lines = [String]()
lines.append("Line number 1")
lines.append("Line number n")
然后你可以这样做:
func setLabelTextForLines(lines:[String]){
var text = ""
for line in lines {
text += line
text += "\n"
}
myLabel.numberOfLines = 0
myLabel.text = text
}
所以你可以有一个名为lines的数组并对其进行编辑,然后调用该函数来重新分配文本:
setLabelTextForLines(lines)
lines[0] = "Changed the first line"
setLabelTextForLines(lines)