我正在使用.xibs,我想使用核心數據。最簡單的答案是在AppDelegate.h中定義@property
。但我需要在xml解析器文件中填充我的模型,並且我想在許多控制器中獲取數據。所以使用[[[UIApplication sharedApplication] delegate] context]
有這麼難看。 有沒有什麼好看的解決方案?如何在iOS應用程序中傳遞NSManagedObjectContext?
0
A
回答
1
請記住,子類NSManagedObject
的每個對象也都有上下文。 假設你有(經典例子)Book
和Author
。這是Entitis ofc。關係1-n(一位作者 - 多本書)。
我不知道你在這裏完成了什麼,但在許多應用程序中,你有主 - 細節 - 更多細節 - ... viewControllers。所以回到示例:
可以說你的MainViewController是一個AuthorsViewController
。這是一個帶有作者的tableView。你想挖掘作者,看看他寫的是什麼書。因此,在您BooksViewController
你有一個模型屬性:
@property (strong,nonatomic) Author *author;
你可以將其設置成許多不同的方式。自定義setter,從segue傳遞...不要介意。我相信這很明顯。
這樣做的好處是,在完成此操作後,您的BooksViewController
中已有上下文。每當你寫:
self.author.managedObjectContext
這將是正確的上下文。
所以,當你有navigationController
的應用程序,你可以創建在AppDelegate
或單身人士或在mainVC中的上下文。你只會調用一次,然後從NSManagedObject
調用它,你會通過。
-1
你可以試試這個偉大的教程:core data with a single shared uimanageddocument
相關問題
- 1. 如何在iOS和TvOS應用程序之間傳遞數據?
- 2. 在線程之間傳遞NSManagedObjectContext
- 3. 如何將數據傳遞給其他iOS應用程序?
- 4. 如何將隨機字符串傳遞給iOS應用程序?
- 5. 如何將-FIRAnalyticsDebugEnabled傳遞給Xamarin iOS應用程序?
- 6. 如何在ios應用程序中使用soap web服務傳遞參數
- 7. 如何通過對象傳遞NSManagedObjectContext
- 8. 如何在ios應用程序中宣傳我的其他iphone應用程序?
- 9. 如何在iOS中不斷向其他應用程序傳遞數據?
- 10. 如何在Android應用程序中傳遞引用?
- 11. 如何在不切換應用程序的情況下在iOS應用程序之間傳遞數據?
- 12. IOS如何同步多線程NSManagedObjectContext?
- 13. 如何在ios應用程序擴展中上傳
- 14. 多NSManagedObjectContext或傳遞它?
- 15. 如何在WPF MVVM應用程序中傳遞DataGridCellEditEventArgs
- 16. 如何在info.pliost中動態傳遞Facebook應用程序ID?
- 17. 如何在Mac應用程序中傳遞命令行參數
- 18. 如何在ASP.NET MVC Web應用程序中傳遞上下文
- 19. 如何在我的C#應用程序中獲取SMS傳遞?
- 20. 如何使用故事板(iOS)時將NSManagedObjectContext傳遞給視圖控制器
- 21. 如何在我的iOS應用程序之間傳遞對象/數據
- 22. 控制器是否應該知道iOS應用程序中的NSManagedObjectContext
- 23. 如何在進程/應用程序之間傳遞IntPtr
- 24. NSManagedObjectContext崩潰應用程序的問題
- 25. 當使用StoryBoard時傳遞NSManagedObjectContext參考
- 26. 將cmd行參數傳遞給應用程序使用Calabash-ios
- 27. 如何正確將應用程序對象從應用程序傳遞給Node應用程序中的routes.coffee
- 28. 如何在上傳前檢查iOS應用程序大小
- 29. 如何繼續在iOS應用程序的後臺上傳?
- 30. 如何從iOS應用程序在DropBox上上傳圖片
創建一個單身'..DataManager'並已將其控制訪問數據存儲。 – Wain
是的,我想過了。如果沒有任何解決方案,我會做singleton –
也看看[Core Data Release Notes](http://developer.apple.com/library/mac/#releasenotes/DataManagement/RN-CoreData/index) .html):*「...嵌套上下文使得它比以往更加重要,您採用訪問上下文的」傳遞接力棒「方法(通過將上下文從一個視圖控制器傳遞到下一個視圖控制器),而不是直接從應用程序委託。「* –