2013-02-25 79 views
0

大家好,核心数据应用设计

我有一个关于一个应用程序我开发的Mac OS X现在使用一个简单的SQLite数据库的问题。我的问题是我应该如何处理数据源组件到我的应用程序? 是否有一种简单的方法可以在不同的视图控制器中使用一个数据源,而不是通过使用将代码发送给AppDelegate的代理? 这可能看起来是一个奇怪的问题,但事实是,我一直只在iOS上开发,并且只需将objectcontext传递给viewController以使其可用于视图控制器。 MacOSX上,我无法弄清楚如何做同样的...

任何帮助,将不胜感激......

+0

为什么不是在OSX工作?您可以像使用iOS一样使用托管对象上下文。 – Mundi 2013-02-25 15:11:33

+0

@Mundi好的,但我怎么把它从一个viewcontroller传递给另一个?我是否需要在界面构建器中创建一个指向每个viewcontroller的数据源的对象?如何在代码中做到这一点? – 2013-02-25 15:16:06

回答

2

如何从一个视图控制器通过上下文另:

newViewController.managedObjectContext = self.managedObjectContext; 

或者,您可以保持应用程序的委托范围内,并覆盖initWithCoder当一个视图控制器从故事板或XIB初始化它应该被称为:

AppDelegate *delegate = (AppDelegate*) [[NSApplication sharedApplication] delegate]; 
self.managedObjectContext = delegate.managedObjectContext; 
+0

感谢百万老兄,你摇滚! – 2013-02-25 15:36:15

+0

只是一句话:如果问题是关于OS X应用的话,它不应该是'NSApplication'吗? – 2013-02-25 15:48:55

+0

对,可可是不同的。 – Mundi 2013-02-25 16:01:52