iOS - 如何将AppDelegate的ManagedObjectContext传递给来自NavigationView的UIViewController

Too*_*dos 3 iphone core-data objective-c ios

我正在努力应对核心数据概念,我需要一些澄清.

我正在使用Storyboards,我有2个视图.第一个视图嵌入在导航控制器中,第二个视图只是一个来自模态segue的UIViewController.在AppDelegate中,我使用以下代码将managedObjectContext传递给第一个视图:

UINavigationController *nav = (UINavigationController *) self.window.rootViewController;
JobListTableViewController *jltvc = (JobListTableViewController *)[[nav viewControllers]objectAtIndex:0];
jltvc.managedObjectContext = self.managedObjectContext;
Run Code Online (Sandbox Code Playgroud)

问题是,现在我还需要将adminObjectContext从AppDelegate传递到我的第二个视图,但我不知道如何掌握它.这样做,只是失败,因为没有索引1:

AddJobsViewController *ajvc = (AddJobsViewController *)[[nav viewControllers]objectAtIndex:1];
Run Code Online (Sandbox Code Playgroud)

我无法发布我的故事板的截图,因为我没有足够的stackoverflow声誉:(

有关此核心数据/授权问题的任何帮助将受到高度赞赏.谢谢.

βha*_*avḯ 6

JobListTableViewControllerAddJobsViewController中,您可以像这样保存AppDelegate的引用.

#import "AppDelegate.h"


AppDelegate *app = (AppDelegate*)[[UIApplication sharedApplication] delegate];
jltvc.managedObjectContext = app.managedObjectContext;
Run Code Online (Sandbox Code Playgroud)