gpt4 book ai didi

ios - 从 UILabel 更改 LineBreak 字符

转载 作者:行者123 更新时间:2023-11-29 11:45:16 32 4
gpt4 key购买 nike

当我将下面的文本添加到我的 UILabel 中时,

Lorem, Ipsum, is simply, dummy text of, the printing, and typesetting industry.

现在,假设我的 UILabel 的宽度是有限的,但行数 = 0(无限制),那么它将显示如下文本:

Lorem, Ipsum, is
simply, dummy text
of, the printing,
and typesetting
industry.

在这里,您可以看到换行符是在空格处完成的,现在我希望它们更新,并且我只希望在有换行符或逗号 (,) 时换行符。那么,我该如何实现呢。

我的预期输出是

Lorem, Ipsum,
is simply,
dummy text of,
the printing,
and typesetti
ng industry.

最佳答案

测试解决方案

创建textcustomText空字符串

let text = "Lorem, Ipsum, is simply, dummy text of, the printing, and typesetting industry."
var customText = ""

填充 customText 如果前一个字符不是 ,则用不可分割的空格 \u{00a0} 替换空格

text.characters.enumerated().forEach { (idx, character) in
let prevChar = text[text.index(text.startIndex, offsetBy: max(0, idx-1))]
if character == " " && prevChar != "," {
customText.append("\u{00a0}")
}
else {
customText.append(character)
}
}

创建您的标签并将 customText 分配给它的文本

let label = UILabel(frame: CGRect(x: 0, y: 0, width: 115, height: 5))
label.numberOfLines = 0
label.text = customText
label.sizeToFit()

关于ios - 从 UILabel 更改 LineBreak 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44300502/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com