如何更改 NSTextStorage 中仅未来文本的属性?

问题描述

美好的一天,

我想知道如何更改 NSTextStorage 中仅未来文本的属性,设置 textStorage 的属性会更改文本存储中的所有文本而不是未来文本。如果有人可以帮助我。将不胜感激。

谢谢

解决方法

NSTextStorage 是 NSMutableAttributedString 的子类。您可以使用 setAttributes(_:range:) 和相关方法为任何范围的字符设置属性。您可以使用 append()insert() 附加和插入 NSAttributedStrings(具有它们自己的属性)。

NSMutableAttributedString 中没有“当前”属性。您将属性分配为要添加的 NSAttributedString 的一部分。如果要更改新添加文本的属性,则需要使用这些属性创建 NSAttributedStrings。

如果您正在使用 (NS|UI)TextView 或 UITextField,您可以使用 typingAttributes 来设置应将哪些属性应用于新文本,但这是在 UI 层处理的,而不是 NSTextStorage层。如果您要制作自己的 UI 元素,则需要自己处理。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...