0

我已经在我的 Cocoa App 中成功实现了一个 NSDocument 类,它也能够正确保存数据。但是在打开文件时我遇到了问题。

这是我的基本设置:

NSDocument MyFile ==xib 文件=> MyFile.xib

NSObject FileClass 作为处理类

FileClass 是一个压缩/解压缩文件的类,并连接到 MyFile.xib 中窗口的文本字段。保存是通过默认的 NSNotificationCenter 完成的。数据需要在此类中处理,因为它不包含原始 NSString。

假设我有三个需要打开的文档 我有三个 NSDocument 实例,它们现在通过 NSNotificationsCenter 发送它们的数据。因为我有三个 NSDocument,所以我有三个窗口和三个 FileClass 实例。现在,如果正确的 FileClass 接收到数据只是运气,因为我无法过滤接收到的数据是否针对此窗口提出。一个随机的 FileClass 现在处理该文件并设置其关联的文本视图的文本。因此,窗口 1 可以显示被认为显示在窗口 3 中的数据。

数据流:

NSDocument => readFromData => NSNotificationCenter => 随机 FileClass => 关联的 TextView。

缩小范围:如何将数据路由到其正确的窗口以及如何/在何处将 FileClass 包含在此构造中?

提前致谢!

保罗

4

1 回答 1

1

如果您必须通过通知中心强制将文档数据发送到查看类,则表明存在重大设计缺陷。为什么你必须这样做?你想规避什么问题?

于 2011-08-04T20:38:56.893 回答