2011-11-11 2 views
0

iPhone 용 Cocos2D를 배우기 시작했습니다. 기본 템플릿에는 viewController가 있지만보기를 실행하면 viewController 뷰 대신 HelloWorldLayer가로드됩니다.iPhone Cocos2D - 코드를로드 할 위치는 어디입니까?

viewController를 사용하여 작업 할 때 .m의 해당 컨트롤러에 대한 주 로직을 사용했지만 Cocos2D가 다른 방식으로 작동하기 때문에 주 논리 코드를 어디에 두어야하는지 궁금합니다.

무슨 뜻입니까? Cocos2D로 개발하기 나는이 "레이어"파일들을 가지고있을 것이고 장면들을 통과 할 때이 파일들 중 하나는 한 번에 활성화 될 것이지만 지금은 인앱 구매 또는 코어 데이터가있는 어플리케이션을 만들고 있다고 상상합니다. 나는 판매와 데이터베이스를 다루는이 공통 논리가 있어야하는 중심적인 장소를 가져야한다. 모범 사례는 어디에 있습니까? viewController에 넣으려면 Cocos2D가 만들거나 무엇을할까요? 어떻게 그걸합니까?

앱이 실행될 때와 첫 번째 장면을 표시하기 전에 코드가 초기화되도록하려면 어디에 두어야합니까?

감사

답변

2

적인 Cocos2D의 시작 코드는 응용 프로그램의 위임 아래 applicationDidFinishLaunching 방법입니다. 따라서 로딩 코드를 초기화 할 수 있습니다.

Cocos2D에 의한 뷰 컨트롤러 설정이 잘못되어 뷰 컨트롤러의 viewDidLoad 메서드가 호출되지 않는 문제가 발생할 수 있습니다. 당신은 줄 끝에서, 그러나 아래 applicationDidFinishLaunching에서 수동으로 호출 할 수 있습니다 : http://www.raywenderlich.com/

+0

감사 : rootViewController.view = glView

당신은 여기에 더 많은 빛을 창고 튜토리얼을 많이 찾을 수 있습니다. 수동으로 전화를 걸면 무엇을 의미합니까? applicationDidFinishLaunching의 끝에서 [viewController setView : glView] 그리고 [window addSubview : viewController.view]와 심지어 viewController의 viewDidLoad가 호출되지 않았다는 것을 알 수 있습니다 ... 어떤 생각이라도 있나요? 감사. – SpaceDog

+0

Cocos2D가이 가이드 라인을 따르지 않기 때문입니다 : http://stackoverflow.com/questions/1479576/viewdidload-not-called-in-subclassed-uiviewcontroller 이 문제를 해결하려면 다음 라인 바로 다음에 viewDidLoad를 호출하십시오 : \t \t rootViewController .view = 글보기; [rootViewController viewDidLoad]; – LearnCocos2D

관련 문제