[英]Launch CoreData View Not From AppDelegate?
我正在使用 Core Data 并且对它非常陌生。 这段代码看起来很重要:
UINavigationController *navigationController = (UINavigationController *)self.window.rootViewController;
MasterViewController *controller = (MasterViewController *)navigationController.topViewController;
controller.managedObjectContext = self.managedObjectContext;
它将managedObjectContext
设置为所需的视图对吗? (这次是MasterViewController
现在我玩过它,但似乎无法让它工作。 如果我想从应用程序的其他地方启动MasterViewController
,而不是直接从/作为根视图启动,该怎么办?
我在InterFace Builder中看到的观点:
UINavigationController
>Relationship> UIViewController
>Push Segue> UITableViewController
所以在界面构建器中, UINavigationBar 是空白的第一个控制器,然后 UIViewController 连接到它,并且是用户将在应用程序中看到的第一个视图。 然后我想从那里到我的 UITableViewController 那里我有我的 CoreData 使用。
您有两种解决方案:
您必须在所有 UIViewController 之间通过所有应用程序传递NSManagedObjectContext
或者
从这样的任何地方获取您的NSManagedObjectContext
:
[[[UIApplication sharedApplication] delegate] mainManagedObjectContext];
确保:
managedObjectContext
。datasource
从self.fetchedResultsController
获取其数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.