2014-09-07 8 views
0

SpriteKit과 objective C에 대해 매우 익숙해 져서 연주하고 있으므로 수정이 불가능한 오류 메시지가 발생했습니다. 예상치 못한 식별자 메시지가 표시되고 이유가 확실하지 않습니다. 함수가 객관적으로 작동하는 방식을 이해하고자하므로이 방법을 사용하고 있습니다. c. 이 문제와 관련하여 누군가 제가 올바른 방향으로 나를 도울 수 있는지 궁금합니다.예기치 않은 식별자 오류 - SpriteKit

코드는이 부분입니다.

@implementation HMGameScene 

-(id)initWithSize:(CGSize)size { 
    if (self = [super initWithSize:size]) { 
     SKSpriteNode *lvl1_bg_image = [HMGameScene set_lvl1_bg]; 
     [self addChild:lvl1_bg_image]; 
    } 
    return self; 
} 

+(SKSpriteNode*) set_lvl1_bg { 
    SKSpriteNode *lvl1_bg_image = [SKSpriteNode spriteNodeWithImageNamed:@"lvl1bg"]; 
    return [SKSpriteNode *lvl1_bg_image]; // The error is here 
} 
@end 

감사

답변

2

당신이 필요로하는 모든 return lvl1_bg_image;입니다. 대괄호 구문은 [receiver message]입니다. 여기서 수신기는 개체 (또는 클래스)이며 호출 할 메서드로 메시지가 해석됩니다. SKSpriteNode 메서드를 호출하지 않으려 고 *lvl1_bg_image은 메시지가 아닌 포인터이므로 컴파일러는 구문을 좋아하지 않습니다.

+0

감사합니다. 저는 Objective C의 세계가 새로운 것이기 때문에 자바 프로그래머입니다. 감사 – baihu