我正在使用 cocos2d-android 进行项目。
这次我需要的是:屏幕上出现一个 CCSprite 并停留 3-4 秒并自动删除。什么班级可以做这项工作
如果有人早些时候做过这件事。建议我的方式?
我正在使用 cocos2d-android 进行项目。
这次我需要的是:屏幕上出现一个 CCSprite 并停留 3-4 秒并自动删除。什么班级可以做这项工作
如果有人早些时候做过这件事。建议我的方式?
我会给你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];
}