您可以使用正则表达式查找除空格之外的任何内容,使用 while 循环查找字符串中出现的位置并使用这些范围更改属性字符串的背景颜色:
斯威夫特 4
let mutable = NSMutableAttributedString(string: interests)
var startIndex = interests.startIndex
while let range = interests.range(of: "\\S+", options: .regularExpression, range: startIndex..<interests.endIndex) {
mutable.addAttribute(.backgroundColor, value: UIColor.cyan, range: NSRange(range, in: interests))
startIndex = range.upperBound
}
label.attributedText = mutable
注意:如果您想在文本周围添加空格,您可以将正则表达式更改为," \\S+ "
并且不要忘记在原始兴趣字符串的开头和结尾添加空格。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句