我一直试图在我的场景中获得一层。我的场景被称为“生存”。我的图层被称为“sspritelayer”。场景初始化,但图层没有。

survival.h:

#import <Foundation/Foundation.h>
#import "cocos2d.h"
#import "SSpriteLayer.h"

@interface Survival : CCLayer {}
@end
.

survival.m:

@implementation Survival

+(CCScene *) scene
{
   // 'scene' is an autorelease object.
   CCScene *scene = [CCScene node];

   // 'layer' is an autorelease object.
   Survival *layer = [Survival node];
   SSpriteLayer *spriteLayer = [SSpriteLayer node];

   // add layer as a child to scene
   [scene addChild: layer];
   [scene addChild: spriteLayer];

   // return the scene
   return scene;
}

-(id) init
{
   if( (self=[super init]))        
       NSLog(@"SCENE HAS INIT");

   return self;
}

@end
.

sspritelayer.h:

#import <Foundation/Foundation.h>
#import "cocos2d.h"

@interface SSpriteLayer : CCLayer {

}

@end
.

sspritelayer.m:

#import "SSpriteLayer.h"


@implementation SSpriteLayer

-(id) init
{
   if( (self=[super init]))         
       NSLog(@"SPRITELAYER HAS INIT");  

   return self;
}


@end
.


我不理解的是为什么我的图层没有发起,以及为什么我没有在调试区域中没有消息“spritelayer有init”。

有帮助吗?

解决方案

  // add layer as a child to scene
  [self addChild: layer];
  [self addChild: SpriteLayer];
.

更改它并尝试

其他提示

确保,您调用

[Survival scene];
.

不是

[Survival node];
.

和邮政编码在这里调用您的场景

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top