2

在我的应用程序中,我想在另一个类(myClass)中使用由 AppDelegate 创建的 ManagedObjectContext。为此,我首先在 MyClass 中创建了一个实例变量来存储 objectContext:

NSManagedObjectContext *managedObjectContext;

我还用@property 定义了getter 和setter。为了设置实例变量,我在初始化后为其分配了 AppDelegate 的 managedObject 上下文:

-(void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
   myClass *myClassInstance = [[myClass alloc]init];
   [myClassInstance setManagedObjectContext:[self managedObjectContext]];
}

现在,当我运行应用程序时,我得到以下信息:

-[NSManagedObjectContext copyWithZone:]: unrecognized selector sent to instance 0x100634c90

老实说,我真的不知道该怎么办。有人能帮我吗?

4

1 回答 1

2

似乎您已经使用“复制”属性为托管对象上下文声明了@property。您应该将其声明为

@property(strong, nonatomic) NSManagedObjectContext *managedObjectContext;

无法复制托管对象上下文,但它也没有任何意义。您想在课堂上使用相同的上下文,而不是(独立)副本。

于 2013-01-23T18:52:11.903 回答