2014-06-27 147 views
0

我是iOS和Core Data中的完整初學者。我遵循了Lynda.com的Core Data示例,並且仍在努力掌握所有內容的要點。將核心數據屬性從viewController傳遞到另一個viewController

我目前的版本有一個UITableViewController(讓我們稱之爲resultsTVC),它將選定的objectAtIndex傳遞給UIViewController(displayUserVC)。我想知道是否有可能將已經從UIViewController(displayUserVC)加載的細節傳遞給另一個UIViewController(addMoviesVC)?基本上 - 你是否需要將UIViewController(displayUserVC)中當前獲取的項目保存到某處,或者是否有可能訪問已經在UIViewController(displayUserVC)中加載到新UIViewController(addMoviesVC)的內容?

謝謝你們

+0

如果您的轉換是通過'UIStoryboard' segue,您可以使用'prepareForSegue'方法並通過segue的目標視圖控制器屬性將'displayUserVC'變量/ s傳遞給'addMoviesVC'中的public變量/ s。 – andrewbuilder

+0

原諒我太天真了,但你究竟傳遞了什麼?我假設你必須向前傳遞當前的managedObjectContext? – shineon88

+0

對於這個答案,他說要直接傳遞對象。一旦你從CoreData中讀取對象,它就在你的內存中,只要你有一個對我的引用 – LyricalPanda

回答

-1

我見過它做和建議是建立一個Singleton ManagedObjectContext是從多個VC訪問的方式。然後在您的prepareForSegue中,將對象標識符傳遞給下一個VC。然後,加載的VC可以獲取對上下文的引用並加載任何您需要的內容。這樣你的VC就可以擁有MOC以防你需要做任何改變(即編輯/刪除/插入CoreData)。

+0

這個單例類可以處理多個實體和關係嗎?我有約4人。對不起,如果這是一個愚蠢的問題 - 仍然是核心數據的初學者。 – shineon88

+0

單例的目的是創建一個在整個應用程序中使用的實例 - 這確保您在整個應用程序中沒有多個MOC實例,並擔心數據必須在它們之間進行同步。單例類不是一個新對象 - 它只是簡單地向所有嘗試訪問它的VC返回相同的MOC。對你的問題:是的。它正在覈心數據庫中使用3 MB以上的企業應用程序,以及大約14個具有總共約60個關係的實體。 – LyricalPanda

+0

只是想知道 - 當你檢查「使用核心數據」時,AppDelegate在技術上是單身嗎?基本上你可以將AppDelegate導入每個類來獲取這些核心數據對象嗎? – shineon88

相關問題