首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CCSprite来了,3秒后它会自动移除?[完成]

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

Stack Overflow用户
提问于 2013-08-14 06:44:53
回答 1查看 607关注 0票数 1

我正在用cocos2d-android做项目。

这一次我需要的是:A CCSprite出现在屏幕上,停留3-4秒,并自动删除。可以使用什么类来完成这项工作--

如果有人之前做过这件事。给我指路?

EN

回答 1

Stack Overflow用户

发布于 2013-08-14 06:54:59

我将给出目标-c中的代码示例,因为我从来没有处理过cocos2d-android,我认为它非常简单。

代码语言:javascript
复制
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。同样,目标-c样本:

代码语言:javascript
复制
 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方法:

代码语言:javascript
复制
-(void)removeSprite
{
  CCSprite *sprite = [self getChildByTag:100];
  [self removeChild:sprite];
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18224921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档