CCSprite来了,3秒后它会自动删除?[完成]

时间:2013-08-14 06:44:54

标签: cocos2d-android

我正在使用cocos2d-android进行项目。

这次我需要的是:屏幕上出现一个CCSprite并保持3-4秒并自动删除。有哪些课程可以完成这项工作

如果有人早点做过这件事。建议我的方式?

1 个答案:

答案 0 :(得分:1)

我会在Objective-c中给你代码示例因为我从未处理过cocos2d-android,我相信这很简单

CCSprite *spriteToDisplayAndRemove = [CCSprite spriteWithFile:@"filename.png"];
[self addChild:spriteToDisplayAndRemove];//say CCLayer adds our sprite
CCDelayTime *delay =  [CCDelayTime actionWithDuration:3];
CCCallBlock *block = [CCCallBlock actionWithBlock:^{

   [self removeChild:spriteToDisplayAndRemove];
}];
[self runAction:[CCSequence actions:delay, block, nil]];

编辑:

由于cocos2d-android中的块不可用,您可以改用CCCallFunc。再次,Objective-c样本:

 CCSprite *spriteToDisplayAndRemove = [CCSprite spriteWithFile:@"filename.png"];
 spriteToDisplayAndRemove.tag = 100;
[self addChild:spriteToDisplayAndRemove];//say CCLayer adds our sprite
CCDelayTime *delay =  [CCDelayTime actionWithDuration:3];
CCCallFunc *callFunc = [CCCallFunc actionWithTarget:self selector:@selector(removeSprite)];
[self runAction:[CCSequence actions:delay, callFunc, nil]];

这是您的removeSprite方法:

-(void)removeSprite
{
  CCSprite *sprite = [self getChildByTag:100];
  [self removeChild:sprite];
}