1

我创建了一个“注释”字段,旨在保存我想存储在自定义对象中的多段文本。最初,我只是使用 NSTextField 作为临时解决方案,但这不允许我滚动或拥有多段文本......

在 IB 中,我放置了一个 NSTextView(它似乎被包裹在一个 NSScrollView 中。)在执行我的程序时,似乎允许我在多个段落中输入文本、滚动等。简而言之,它看起来正是我想要的喜欢它。到现在为止还挺好。

现在,我需要从此字段中检索数据并将其存储在我的自定义对象中。这是我在开发人员文档中有点迷失的地方......

我的目标相当简单:

  1. 允许用户在框中键入。

  2. 当用户移动到另一个字段时,将框的内容存储到我的自定义对象中的变量(数组等)中,留下注释字段。

  3. 下次查看记录时,在文本框中显示用户存储的文本。

其次,有没有一种简单的方法来检索数据并将其存储到我的自定义对象(例如 NSString 对象)中的“notes”变量中?我认为有多个将排除 NSString 对象作为此处的选项,但也许我是错了)还是我在这里进入了一个更复杂的领域(例如必须将其存储在 NSString 对象的数组中等)?

任何帮助,将不胜感激!

4

1 回答 1

2

您可以使用-string由 NSText 定义的数据(例如NSString *savedString = [aTextView string]

您的保存代码可以放在您的NSTextDelegate(读取,委托NSTextView,因为它是直接超类)中– textDidEndEditing:,当编辑完成时(例如,当用户在视图外单击时)或其他方法之一将调用其中.

如果您清空了文本视图或其他内容,然后重新加载保存的字符串,请[textView setString:savedString]在编辑开始之前使用。

NSTextDelegate 文档:这里


当您说“将框的内容存储到变量(数组等)中时,我不确定您的意思。您是否希望自定义注释数组?文本视图存储一串数据,所以最简单的方法存储它的值是使用一个字符串;如果您需要一组注释,则必须将字符串值拆分为不同的段落,这应该不会太难。

于 2012-05-22T15:40:41.307 回答