jjzjj

NSManagedObjects

全部标签

ios - 在 UIViewControllers 中传递 NSManagedObjects 的方法

在一个应用程序中,可能有不同的UIViewController需要共享相同的NSManagedObject。我通常会执行以下操作:@interfaceCustomController:UIViewController@property(nonatomic,retain)ProductNSManagedObject*productManaged;@end然后,当我实例化CustomController时,我会像下面这样注入(inject)它:customController.productManaged=....一旦完成,CustomController负责释放它。这种方法效果很好(我不

ios - 使用 NSKeyedArchiver 从保存在 NSDictionary 中的 NSManagedObjects 生成 XML

我有一个NSDictionary,其中包含一堆NSManagedObject。然后我可以使用NSKeyedArchiver将其写入NSData对象。这些是使用thismethod.生成的哪个工作正常并允许我将模式的一部分保存到光盘,然后将其作为核心数据模型中的一组新对象读回。如果我使用archivedDataWithRootObject之一:或archiveRootObject:toFile:,根据documentation我可以看到存档的格式是NSPropertyListBinaryFormat_v1_0,而我想在NSPropertyListXMLFormat_v1_0中进行序列化,

ios - 核心数据和 GCD : Passing the correct managed object context to custom NSManagedObjects

我收到运行时错误,这似乎是由于我错误地执行了GCD而导致的结合我的自定义NSManagedObjects。嵌套在GCD中调用,我正在使用自定义NSManagedObjects,它(似乎)有自己的托管对象上下文(=self.managedObjectContext)。我正在使用UIManagedDocument提供的托管对象上下文在应用程序委托(delegate)中创建托管对象上下文:self.managedDocument.managedObjectContext.我不明白如何将正确的托管对象上下文传递到我的自定义NSManagedObjects。我需要如何更改我的代码才能使用正确的托

ios - 如何覆盖 NSManagedObjects 的 hash 和 isEqual?

我们有一堆不同类型的NSManagedObjects。其中一些具有其他NSManagedObjects的NSSet成员。问题是我真的需要重写集合中对象的散列和isEquals方法——但它们是NSManagedObjects。我在获取集合中的多个相同对象时遇到问题。据我所知,由于散列默认为对象地址-所有对象都是不同的。所以我需要覆盖hash和isEquals-但看不到任何方法。我们拥有的是系统中的一堆东西,更多的东西是通过XML传入的——有时是现有对象的重复。当它们相同时,我不想将复制品添加到集合中。 最佳答案 如Wain所述,NSM

ios - 在...的对象上找不到属性 NSManagedObjects 上的错误调试属性

我以前多次使用coredata使用objective-c创建了一个新项目,但我注意到较新的Xcode不允许我调试我的NSManagedObject上的属性,这些属性引用另一个不同的NSManagedObject.让我用一个例子来解释。MLP代表MyLittleProject我有以下对象:MLPPerson+CoreDataProperties.h@property(nullable,nonatomic,retain)MLPCard*card;MLPCard+CoreDataProperties.h@property(nullable,nonatomic,retain)NSString*

iOS 8 – 创建临时的 NSManagedObjects

在iOS7(及更早版本)中,可以使用选项有效地创建“临时”NSManagedObject,以便稍后将其添加到上下文并持久化,像这样:NSEntityDescription*entityDescription=[NSEntityDescriptionentityForName:@"User"inManagedObjectContext:managedObjectContext];User*user=[[Useralloc]initWithEntity:entityDescriptioninsertIntoManagedObjectContext:nil];注意nilNSManagedOb

ios - 解析 JSON 和创建 NSManagedObjects 时内存消耗巨大

我正在iPad上解析一个大约有53MB的JSON文件。解析工作正常,我使用的是Yajlparser,它是一个SAX解析器,并且设置如下:NSData*data=[NSDatadataWithContentsOfFile:pathoptions:NSDataReadingMappedAlways|NSDataReadingUncachederror:&parseError];YAJLParser*parser=[[YAJLParseralloc]init];parser.delegate=self;[parserparse:data];到目前为止一切正常,但JSON文件变大了,现在我在i

ios - 序列化包含对核心数据中 NSManagedObjects 的引用的多维数组

我有两个实体,Chain和Step。Chain有一个属性steps,可以是Step实体的多维数组,例如:[step,step,step,[step,step],step]每个Step对象都有一个content属性,它是一个字符串。如果我使用的是关系数据库,我会将该数组存储为JSON,每个step都是特定步骤的step_id。我如何在CoreData中实现类似的东西?我想我需要使Step类符合NSCoding协议(protocol),但那会是什么样子呢?我如何让它在Chain.steps的最终值中只存储与其id等效的内容,即对自身的引用?编辑下面的评论表明我在Step和其他Step之间包

iphone - 核心数据 - 在多个线程之间共享 NSManagedObjects

我遭受了在多个线程中使用单个MOC的所有后果-我的应用程序在随机点崩溃,因为MOC是在主线程中创建的,我还使用它来填充另一个线程中的DB。尽管代码是使用全局单例同步(@synchronize)的,但应用程序崩溃了。我读到过为每个线程使用单独的MOC可以解决问题,但我也读到过跨线程共享NSManagedObjects也被认为是一种不好的方法。我的用例如下:1)我从服务器加载和解析XML,在解析过程中我将每个新的NSManagedObject插入到数据库中。这一切都发生在一个单独的线程中。2)用户从主线程与从数据库读取数据的UI进行交互。在两个线程中我都使用NSManagedObjects

ios - 通过objectID获取NSManagedObjects数组将返回空数组

我正在尝试执行提取操作,以使用从不同上下文中收集的对象ID数组从上下文中检索托管对象。但是,获取返回的是一个空数组。在“核心数据编程指南”的“检索特定对象”部分中link:Ifyourapplicationusesmultiplecontextsandyouwanttotestwhetheranobjecthasbeendeletedfromapersistentstore,youcancreateafetchrequestwithapredicateoftheformself==%@.Theobjectyoupassinasthevariablecanbeeitheramanaged