ios - 使用 Storyboard时如何将 NSManagedObjectContext 传递给 View Controller (iOS)

标签 ios core-data uitabbarcontroller nsmanagedobjectcontext

我将标签栏 Controller 核心数据结合使用。每个不同的选项卡都需要访问 NSManagedObjectContext,但是我不想使用单例或只是将它们从 app delegate 中拉出。当应用程序加载时,有没有办法将它们以编程方式从应用程序委托(delegate)传递到 View Controller ?

最佳答案

如果 Storyboard中有基于选项卡的应用程序,窗口的 rootViewController 将是 UITabBarController。从那里您可以获得制作选项卡的 View Controller 。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
    UIViewController *firstVC = tabBarController.viewControllers[0];
    firstVC.managedObjectContext = self.managedObjectContext;
    UIViewController *secondVC = tabBarController.viewControllers[1];
    secondVC.managedObjectContext = self.managedObjectContext;
    // more...
}

关于ios - 使用 Storyboard时如何将 NSManagedObjectContext 传递给 View Controller (iOS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18042324/

相关文章:

ios - NSPredicate 与 NSNumbers 的 NSArray(核心数据)

objective-c - 仅在第二次加载 View 时运行函数

ios - UITabBarController Storyboard启动屏幕 - 初始选项卡?

ios - 如何判断苹果应用内购买是后端的调试测试

ios - 单击按钮时,我想将应用程序从前台带到后台?这可能吗?如何?

ios - 全新安装的核心数据迁移

ios - 设置 MoreViewController

iphone - 获取被触摸的按钮的标题

ios - App Store Connect 和 TestFlight 中缺少应用商店图标

iphone - nsfetchedresultscontroller 中部分名称键路径的无关系值