草庐IT

managedObjectContexts

全部标签

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

我在核心数据概念上苦苦挣扎,我需要一些澄清。我正在使用Storyboard,并且有2个View。第一个View嵌入在导航Controller中,第二个View只是一个来自模态转场的UIViewController。在AppDelegate中,我使用以下代码将managedObjectContext传递给第一个View:UINavigationController*nav=(UINavigationController*)self.window.rootViewController;JobListTableViewController*jltvc=(JobListTableViewCon

iphone - 单例 managedObjectContext

我想使用单例UIApplication来访问AppDelegate的managedObjectContext。但是当我写[[[UIApplicationsharedApplication]delegate]managedObjectContext]或[[[UIApplicationsharedApplication]delegate]__managedObjectContext]它不起作用。但是这条线工作正常:NSLog(@"SeekingfortheAppDelegate:%@",[[[UIApplicationsharedApplication]delegate]class]);你

ios - 多线程的CoreData死锁

我遇到了在多个NSManagedObjectContexts和多线程场景中发生的相同死锁问题(这在SO上很常见)。在我的一些ViewController中,我的应用程序使用后台线程从Web服务获取数据,并在同一个线程中保存数据。在其他情况下,在不保存的情况下不再继续前进是有意义的(例如,当他们点击“下一步”时从表单中保留值),保存在主线程上完成。AFAIK理论上这应该没有问题,但偶尔我可以在调用时使死锁发生if(![mocsave:&error])...当死锁发生时,这似乎总是在后台线程的保存中。并非每次通话都会发生这种情况;事实上恰恰相反,我必须使用我的应用程序几分钟,然后它就会发生

iphone - managedObjectContext 保存失败,错误为 null

什么会导致错误返回null,我有这个+(BOOL)saveContext:(NSManagedObjectContext*)context{NSError*error=nil;if(![contextsave:&error]){DLog(@"ERROR%@,%@",error,[erroruserInfo]);UIAlertView*alert=[[UIAlertViewalloc]initWithTitle:@"Sorry"message:@"ErrorSavingtheData"delegate:nilcancelButtonTitle:@"OK"otherButtonTitles

objective-c - Restkit [NSManagedObject managedObjectContext] 返回不同的实例

自从我将核心数据逻辑迁移到RKManagedObjectStore后,我遇到了严重的问题。我在ViewController的主线程中设置了一个NSFetchedResultsController,上下文设置为[NSManagedObjectmanagedObjectContext]:assert([NSThreadisMainThread]);NSManagedObjectContext*context=[NSManagedObjectmanagedObjectContext];NSFetchedResultsController*aFetchedResultsController=[

swift - AppDelegate 类型的值在 swift 4 中没有成员 managedObjectContext

我有代码:letappDel:AppDelegate=UIApplication.shared.delegateas!AppDelegateletcontext:NSManagedObjectContext=appDel.persistentContainer.viewContext但是xcode报错:ValueoftypeAppDelegatehasnomembermanagedObjectContext.我想找到一个解决方案,非常感谢。 最佳答案 请使用下面的代码importCoreDataframeworkfuncapplic

macos - 将 managedObjectContext 获取到初始 viewController OS X 的方法

这就是我目前的做法,但我想知道Apple是否建议这样做。我读过一些关于这个的辩论。letappDelegate:AppDelegate=NSApplication.sharedApplication().delegateasAppDelegateifletmoc=appDelegate.managedObjectContext{//dostuffhere}所以这只是将它从AppDelegate获取到第一个viewController。从那里我猜测使用segues是传递managedObjectContext的方式?使用上面的代码非常烦人,因为我将其输入到viewController中需

ios - (UIApplication.sharedApplication().delegate as AppDelegate).managedObjectContext

我读到这行代码从AppDelegate获取托管对象上下文。letmanagedObjectContext=(UIApplication.sharedApplication().delegateasAppDelegate).managedObjectContext我阅读了每个单词的Apple文档,试图重构上面提到的正确的整体输出意义。谁能把这行语法的意思解释清楚详细点? 最佳答案 首先,您访问UIApplication类。这是一个单例。它只有一个实例,由cocoatouch框架在应用程序启动时创建。然后通过调用类方法sharedApp

swift - 如何快速将 ManagedObjectContext 传递给 Root View Controller

我在AppDelegate之外创建了一个单独的CoreDataStack.swift对象,以便在使用CoreData时遵循此处的大部分建议。但是如何将MOC传递给AppDelegate中的rootViewController?我需要向AppDelegate或ViewController添加代码吗?感谢任何可以在Swift中帮助我的人,因为很多旧的ObjC都不适合我!我的CoreDataStack包括MOClazyvarmanagedObjectContext:NSManagedObjectContext={letmanagedObjectContext=NSManagedObjectC

ios - 是否 managedObjectContext.object(with :) always refetch data if another (private) managedObjectContext changed and saved it?

(如果这个问题有点令人困惑/不精确,我很抱歉。我只是在学习高级CoreData用法,我不太了解术语和其他东西)。我有一个单例Game,它包含您在游戏过程中需要的某些数据。例如,您可以从那里访问currentSite(Site是一个CoreDataEntity)以获取Site用户目前位于://IcreatedtheSiteinabackgroundqueue(whenthegamestarted),thensavedtheobjectIDandhereIloadtheobjectIDpublicvarcurrentSiteObjectID:NSManagedObjectID{letobj