我有一個基於文檔的核心數據應用程序。我的主要核心數據實體有幾個字符串字段,其中大多數綁定到NSTextFields,但一個綁定到NSTextView。核心與子視圖和多個NIB的數據綁定
我正在使用Hillegass書中解釋的視圖切換技術(使用多個視圖控制器)。我所有的子視圖都由一個ManagedViewController控制,它是我的NSViewController的子類,它有一個managedObjectContext字段。
我的子視圖存在於單獨的nib文件中。出於某種原因,我在該筆尖中設置的綁定不起作用 - 但是如果我在主筆尖文件中以完全相同的方式設置了小工具和綁定,它們就可以正常工作。
見圖片:
Screenshot http://img180.imageshack.us/img180/3391/screenshot.gif
在主筆尖文件,我有一棵樹控制器,其managedObjectContext勢必文件擁有者的MOC(文件的所有者是myDocument中)。 NSTextField的值(是,值 - 它不是富文本)綁定到treeController.selection.content(其中內容是實體的字符串屬性)。沒問題。這工作正常。
在第二個nib文件中,我有另一個樹控制器,其managedObjectContext綁定到文件的所有者的mOC(文件的所有者是我的ManagedViewController)。 NSTextField的值的綁定方式與上面相同。
在我的代碼中,我已經測試確保兩個managedObjectContexts引用同一個對象。他們這樣做,而不是零。
我沒有得到一個錯誤 - 只是這些值不會與子視圖中的NSTextView綁定。他們總是零。
此外,我試過NSTextFields - 同樣的問題。
有關如何使核心數據綁定與子視圖和多個NIB良好地配合的任何想法?
感謝您的建議,但我有點(非常混亂)。我的文檔如何能夠告訴樹控制器關於當前的選擇?據我瞭解,選擇只存在於樹控制器和大綱視圖。 –
您可以將文檔添加到文檔以保存這些索引路徑。請記住,你不只有一棵樹控制器,你有兩個樹控制器,每個控制器都有自己的想法。這就是爲什麼你需要提供他們兩個一些共同的對象來保存這些信息。您的文檔是我要爲該角色指定的對象。 –
彼得 - 謝謝,它結束了工作。我以爲我誤解了你所說的話,這就是爲什麼它仍然無法正常工作,但這是另一個錯誤(或三個)的責任。 –