【问题标题】:Set the background color of selected text in NSTextView?在 NSTextView 中设置所选文本的背景颜色?
【发布时间】:2011-06-23 00:11:20
【问题描述】:

我正在尝试将用户选择的部分文本的背景颜色更改为文本的不同颜色(以添加突出显示)。现在我尝试了:

  • (void)setSelectedTextAttributes:(NSDictionary *)属性

方法,但这只会改变选择的背景颜色。我需要更改文本的背景颜色,使其保持突出显示。

【问题讨论】:

标签: objective-c cocoa highlight nstextview


【解决方案1】:

正如您所发现的,选定的文本属性仅适用于选定的文本。如果您想为选定的文本添加一些持续存在的属性,您需要将这些属性应用到底层的NSTextStorage 对象(它只是NSMutableAttributedString 的一个子类)。

这样做的方法是使用文本视图的textStorage 方法,然后使用addAttributes:range: 方法(或setAttributes:range:,具体取决于您是要添加到现有文本属性还是完全替换它们) )。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-13
    • 2022-01-22
    • 2011-02-14
    • 1970-01-01
    相关资源
    最近更新 更多