0

低于初始化

yellowbg = [CCSprite spriteWithFile:@"yellowxlixk.png"];
[yellowbg setPosition:ccp(509, 671.75)];
      yellowbg.scale = .75;
[self addChild:yellowbg z: 1];

我将如何延迟这个对象?我对此很陌生,请在您的解释中保持基本。

4

1 回答 1

2

如果你想在 2 或 3 秒后在图层上添加这个对象,那么你可以使用这个..

[self performSelector:@selector(addImageToLayer) withObject:nil afterDelay:2.0]; // specify delay time

这是您的功能:

-(void) addImageToLayer
{
   yellowbg = [CCSprite spriteWithFile:@"yellowxlixk.png"];
   [yellowbg setPosition:ccp(509, 671.75)];
   yellowbg.scale = .75;
   [self addChild:yellowbg z: 1];
}

另一种选择是,您也可以使用这个:

[self schedule:@selector(addImageToLayer) interval:2];

函数:但是在函数中你必须停止调度程序来调用这个方法。通过上面的代码行,它每 2 秒调用一次函数。这就是你必须停止它的原因。

-(void) addImageToLayer
{
   yellowbg = [CCSprite spriteWithFile:@"yellowxlixk.png"];
   [yellowbg setPosition:ccp(509, 671.75)];
   yellowbg.scale = .75;
   [self addChild:yellowbg z: 1];
   [self unschedule:@selector(addImageToLayer)];  //to stop scheduler to calling function repeatedly
}

您可以使用这两种方式中的任何一种来延迟。希望这可以帮助..

于 2013-03-14T04:36:32.537 回答