更改文本视图文本时保留文本样式

Preserve text style when changing Text view text

我有一个带有属性文本的文本视图,带有一些样式,在 Xcode 实用程序面板中设置。基本上,字体、大小和对齐方式。

然后我以编程方式更改视图的文本:

self.myView.text = "New text"

它确实更改了文本,但放弃了文本的所有样式并使用默认样式。

我尝试了 self.myView.attributedText = "New text" 但遇到了协议一致性问题。

处理这个问题的正确策略是什么? 有没有办法在保留样式的同时注入新文本? 或者我应该在每次更改文本时手动重置样式吗?

(请尽可能在 swift 中回答)

基本上,您需要使用所需的文本和格式(字体和文本对齐方式)创建 NSAttributedString

然后将属性字符串分配给文本字段的 attributedText 属性.