首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >addChild in scheduled方法

addChild in scheduled方法
EN

Stack Overflow用户
提问于 2012-12-20 17:33:16
回答 1查看 89关注 0票数 1

我是Cocos2d的初学者,我遇到了一个问题,似乎我不能自己解决。我的问题是,如果我在一个预定的方法中添加一个CCSprite,添加的图像的背景将是不透明的(黑色),即使原点是一个透明的PNG。但是代码更好地解释了我想要做的事情,所以

代码语言:javascript
复制
- (void) openShutters 
{
  NSInteger randomTime = (arc4random() % 3) + 2;
  [self schedule:@selector(openShutter) interval:0 repeat:1 delay:randomTime];
}

- (void) openShutter 
{
  NSInteger randomShutter = (arc4random() % [shutters count]);

  CCSprite *soldier = [CCSprite spriteWithFile:@"soldier.png"];
  soldier.anchorPoint = CGPointMake(0, 1);
  soldier.position = ccp(0, winSize.height);
  [self addChild:soldier];

  [self unschedule:@selector(openShutter)];
  [self openShutters];
}

这里奇怪的问题是,如果我在openShutters方法中移动CCSprite *soldier = [CCSprite ...,精灵将以透明的背景出现,正如所希望的那样。这是cocos-2d中的错误,还是我的代码中的错误,或者从预定方法中添加新的孩子是不安全的?

EN

回答 1

Stack Overflow用户

发布于 2012-12-20 18:01:19

在openShutters方法中,您将此语句赋值为interval=0,在将间隔值设置为大于零之后会产生问题,工作正常

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13969024

复制
相关文章

相似问题

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