2011-03-09 2 views
4

Xcode에서 생성 한 NSManagedObject 하위 클래스로 코어 데이터 저장소를 설정했습니다. 참고. NSManagedObject initWithEntity : insertIntoManagedObjectContext : EXC_BAD_ACCESS

내가 NSEntityDescription insertNewObjectForEntityName를 사용할 수 있습니다 inManagedObjectContext : 아무 문제지만,와 나는이 작업을 수행하려고하면

NSManagedObjectContext* moc = [(QuickTextAppDelegate*)([[UIApplication sharedApplication] delegate]) managedObjectContext]; 

    Note* note = [[Note alloc] initWithEntity:@"Note" insertIntoManagedObjectContext:moc]; 

가 나는 EXC_BAD_ACCESS 오류가 발생합니다.

중단 점을 사용하면 실제로 유효한 개체를 가리키는 NSManagedObjectContext *를 볼 수 있습니다.

도움이 될 것입니다.

답변

14

거기에 적어도 하나의 문제가 있습니다. initWithEntity:insertIntoManagedObjectContext:은 NSString이 아닌 NSEntityDescription을 사용합니다. 다음과 같이 시도해보세요.

NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"Note" inManagedObjectContext:moc]; 
Note* note = [[Note alloc] initWithEntity:entityDescription insertIntoManagedObjectContext:moc]; 
+0

대단히 감사합니다. 나는 문서를 참조하고 모든 것을 시도했지만, 분명히 NSEntityDescription이 무엇인지 충분히주의를 기울이지 않았습니다! –