2014-07-25 2 views
0

프로젝트하지만,적인 Cocos2D + SpriteBuilder 튜토리얼에서이 메소드로 작성 : 방법이다적인 Cocos2D에서마법 기능은 사람들이 init 메소드에서 스프라이트/실제 노드를 초기화적인 Cocos2D 튜토리얼에서

- (void)didLoadFromCCB {} 

만이 자습서 그런 식으로 코드의 라인이 있는데, 그것은 어떤 종류의 메소드인지를 말해줍니다. 맞습니까? :

- (void)onEnter{ 
[super onEnter]; 
} 

그래서 'didLoadFromCCB'는 SpriteBuilder 프로젝트의 마법적인 방법입니까?

답변

0

didLoadFromCCB 메서드는 노드가 CCBReader에 의해로드 된 후 각 노드로 보내집니다. 이 메소드는 해당 노드의 클래스에 의해 구현 될 때 해당 메소드를 실행합니다. 프로토콜을 구현하지 않고도 프로토콜 메소드처럼 작동합니다 (프로토콜도 없습니다). this github issue을 참조하십시오. 로딩이 완료된 후 didLoadFromCCB를 실행

CCBReader 방법은 다음과 같이 그렇게 :

+ (void) callDidLoadFromCCBForNodeGraph:(CCNode*)nodeGraph 
{ 
    for (CCNode* child in nodeGraph.children) 
    { 
     [CCBReader callDidLoadFromCCBForNodeGraph:child]; 
    } 

    if ([nodeGraph respondsToSelector:@selector(didLoadFromCCB)]) 
    { 
     [nodeGraph performSelector:@selector(didLoadFromCCB)]; 
    } 
} 

onEnter 방법은 CCNode 클래스에 의해 정의된다, 그래서는 CCNode 클래스 참조에 설명되어 있습니다와 엑스 코드가 수 그것을 입력하기 시작할 때 방법을 제안하십시오.