objective-c - 具有 subview 和多个 NIB 的核心数据绑定(bind)

标签 objective-c cocoa core-data binding nstextview

我有一个基于文档的核心数据应用程序。我的主要 Core Data 实体有几个字符串字段,其中大部分绑定(bind)到 NSTextFields,但有一个绑定(bind)到 NSTextView。

我正在使用 View 切换技术(使用多个 View Controller ),如 Hillegass 书中所述。我的所有 subview 都由 ManagedViewController 控制,它是我的 NSViewController 的子类,具有 ManagedObjectContext 字段。

我的 subview 存在于单独的 nib 文件中。由于某种原因,我在该 Nib 中设置的绑定(bind)不起作用 - 但如果我在主 Nib 文件中以完全相同的方式设置小部件和绑定(bind),它们就可以正常工作。

查看图片:

Screenshot http://img180.imageshack.us/img180/3391/screenshot.gif

在主 nib 文件中,我有一个树 Controller ,其 ManagedObjectContext 绑定(bind)到文件所有者的 mOC(文件所有者是 MyDocument)。 NSTextField 的值(是的,值 - 它不是富文本)绑定(bind)到 treeController.selection.content (其中 content 是实体的字符串属性。)没问题。这很好用。

在第二个 nib 文件中,我有另一个树 Controller ,其 ManagedObjectContext 绑定(bind)到文件所有者的 mOC(文件所有者是我的 ManagedViewController)。 NSTextField 的值的绑定(bind)方式与上面相同。

在我的代码中,我进行了测试以确保两个 ManagedObjectContext 引用同一对象。他们做到了,而且不是零。

我没有收到错误 - 只是这些值永远不会与 subview 中的 NSTextView 绑定(bind)。它们总是为零。

另外,我也尝试过 NSTextFields——同样的问题。

关于如何使核心数据绑定(bind)与 subview 和多个 NIB 良好配合有什么想法吗?

最佳答案

您有两个树 Controller 。每个人都有自己的选择知识。尝试将两个树 Controller 中的 selectionIndexPaths 绑定(bind)到文档的属性(您需要提供一种通过 View Controller 到达那里的方法)。

关于objective-c - 具有 subview 和多个 NIB 的核心数据绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1387518/

相关文章:

iphone - 更新项目中的所有 localized.strings

objective-c - 在 iOS 上处理复杂配置的首选方式/设计模式

ios - 访问 indexPath.row 字段变量

ios - 核心数据关系问题

iphone - 在 iOS 5 应用程序中将文件保存在何处?

c++ - 从 C++ 数据结构到 Swift 的类型转换

cocoa - XCode 链接构建错误

cocoa - 如何调用NSCell的fieldEditorForView : to assign custom field editor

database - 用 cocoa 创建数据库软件

ios - 核心数据替代方案