如何使用定时器间隔停止功能

时间:2014-03-23 12:20:35

标签: objective-c nstimeinterval

我想停止这样的功能:

     - (void)update:(NSTimeInterval)currentTime
    {

    if (self.lastUpdateTimeInterval)
    {
       _dt1 = currentTime - _lastUpdateTimeInterval;

    }
    else
    {
      _dt1 = 0;
    }

    CFTimeInterval timeSinceLast = currentTime - self.lastUpdateTimeInterval;
   self.lastUpdateTimeInterval = currentTime;

    [self moveObject];
  }

我现在定时器停止:[timer1 invalidate],但是如何停止在定时器间隔上运行的功能?

1 个答案:

答案 0 :(得分:0)

如果要停止动画,可以在精灵对象上调用removeAllActions:

[_sprite removeAllActions];

但是我认为你还需要在精灵没有运行时运行动画。为此,您可以使用:

if (![_sprite hasActions])
{
   [_sprite runAction:action];
}

如果你想只停止一个动画(不是全部),你可以在运行动作时使用runAction:withKey:方法,你可以通过调用actionForKey来查看动作是否正在运行:或者你可以通过调用removeActionForKey来停止它。 / p>