【问题标题】:Getting formatted string from NSTextView从 NSTextView 获取格式化字符串
【发布时间】:2016-11-01 11:15:53
【问题描述】:

我正在使用NSTextViewNSScrollView 中创建一个OSX 应用程序。使用FormatMenuItem 我可以将NSTextView 中的文本修改为粗体、斜体等。但是当我使用(NSTextViewOutlet.String) 获取值时,我无法获取修改后的字符串,即字符串包含粗体和斜体字符。

【问题讨论】:

  • 欢迎来到 Stackoverflow!请发帖minimal, Complete, and Verifiable example,以便我们为您提供帮助。
  • 格式化字符在attributedString属性中。
  • 谢谢埃里克。使用属性字符串我从 NSTextView 获取值。但我不能将它存储在数据类型为字符串的核心数据中。我需要将属性字符串存储到 coredata 并检索它并显示在 NSTextView 中。
  • 我看到了两种方法:将属性字符串编码为数据(例如使用 NSKeyedArchiver)并同步此数据,然后解包以供重用;或提取属性字符串中的属性及其位置并将它们与原始字符串同步,然后从这些元素重新创建属性字符串。这两种解决方案都需要您的努力,但实施起来并不难。我个人会使用第一个解决方案。

标签: swift nstextview


【解决方案1】:

通过使用下面的代码解决我的问题。我使用 NSTextField 而不是 NSTextView。

let str = txt_outlet.attributedStringValue

【讨论】:

  • 在您的 OP 中,您询问了 获得 一些价值。您的回答显示了如何设置一些值。在我看来,您的回答中缺少某些部分。
猜你喜欢
  • 1970-01-01
  • 2021-03-13
  • 1970-01-01
  • 2011-09-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多