我试图使下面的代码工作,但我只在渲染时看到白色矩形:S;
CCSprite *tempSprite = [[CCSprite spriteWithTexture:[[CCTextureCache sharedTextureCache] addImage:@"Icon.png"]] retain];
TapCircle *tapObject = [[TapCircle alloc] initWithSprite:tempSprite];
TapCircle类是TapElement的子类,而TapElement又是CCNode的子类。 TapCircle中的initWithSprite代码:
- (id) initWithSprite:(CCSprite*)tex {
if ((self = [super init]) == nil) return nil;
[self addChild:tex];
return self;
}
然后将TapCircle对象添加到父CCNode,然后将其添加到正在渲染的图层。我已经测试过在另一个projekt中创建tempsprite,我将它直接添加到图层并且它工作了......所以必须是某种父子问题?
答案 0 :(得分:1)
您是否将Icon.png添加为项目资源?另外,你不应该从CCSprite派生出来吗?
答案 1 :(得分:1)
嗯,首先我想你已经在ccConfig.h中定义了调试设置CC_SPRITE_DEBUG_DRAW
或CC_SPRITEBATCHNODE_DEBUG_DRAW
。这将在你的精灵周围放一个白色矩形。