2013-03-19 5 views
1

저는 cocos2d 및 CoreData로 작업하고 있습니다. "AppDelegate.h"를 가져 왔습니다.하지만 객체를 만들 수 없습니다. 나는 내가 할 모든 것이라고 생각할 것이다 :Xcode Cocos2d가 AppDelegate 개체를 만들 수 없습니다.

AppDelegate *delegate; 

내가 이것을하면 AppDelegate가 정의되지 않았다는 오류가 발생한다. AppDelegate .h 및 .m 파일은 주 파일 옆에 있습니다.

또한 파일에 쓸 때 오류가 발생하지 않지만 쓰기는하지 않습니다.

+1

음, 돈 managedObjectContext와 앱 델리게이트를 혼동하지 마십시오. 코어 데이터를 사용한다면 NSManagedObjectContext * 컨텍스트를 만들려고합니다. 당신이 위에서 쓴 것 대신에 – JiuJitsuCoder

+0

아, 네가 맞다. 그러나 나는 coredata를 사용하기 위해 AppDelegate로부터 객체를 생성 할 수 있어야한다. 틀 렸으면 고쳐줘. –

답변

0

XCode로 만든 보일러 플레이트 코드 (XCode를 사용한다고 가정 함)는 * managedObjectContext라는 NSManagedObjectContext를 만듭니다. 뷰 컨트롤러와 같은 핵심 데이터 모델과 상호 작용할 다른 객체를 생성해야하는 경우 해당 managedObjectContext 객체를 인수로 전달하거나 사용자 정의 클래스의 속성에 링크하기 만하면됩니다. 그것은 당신의 커스텀 클래스에 있습니다. App에 AppDelegate 객체를 전달하는 것이 좋지 않다는 점은 주목할 가치가 있습니다. 앱 대리인은 코드 기반을 기반으로하며 일반적인 클래스로 취급되지 않아야합니다. 이 당신이 원하는 (또는 필요) IB에서 그것을 객체로 응용 프로그램 대리자를 전달하거나 참조하는 것입니다 시간은 분명히 있지만, 일반적으로 응용 프로그램은 당신의

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification 

방식으로 실행되고 사용자가 기본 뷰 컨트롤러를 시작합니다 거기에서.

핵심 데이터의 일부 항목에는 영구 저장소 조정자 (예 : 관리되는 개체 ID 검색)가 필요하기 때문에이를 전달해야 할 수도 있습니다. 핵심 데이터 작업에 도움이 필요하면 주제에 대한 훌륭한 기사와 책들이 많이 있습니다. 핵심 데이터는 처음에는 이해하기 어려울 수 있기 때문에 가능한 한 많이 읽는 것이 좋습니다. 모든 사람들이 조금씩 다르게 설명하기 때문에 처음에는 많은 튜토리얼을 읽는 데 도움이되었습니다. 여기

는 바인딩, 코어 데이터에 기록 된 위대한 최근 튜토리얼, 그리고 응용 프로그램 위임 작업을하면 시작할 수 있도록 : http://www.raywenderlich.com/21752/how-to-use-cocoa-bindings-and-core-data-in-a-mac-app가적인 Cocos2D 2.0

0

, AppDelegate에이 AppController가로 이름이 변경됩니다

AppController *app = (AppController*)[UIApplication sharedApplication].delegate; 
관련 문제