NSTimer没有被调用

时间:2012-05-29 01:53:29

标签: ios5 nstimer xcode4.3

我正在制作一款拥有"更新方法之王的应用程序"负责持续运行代码。我想过使用NSTimer,因为它可以选择让它无限重复。我这样负载:

gameTimer = [NSTimer timerWithTimeInterval:0.01428 target:self selector:@selector(GameUpdate:) userInfo:NULL repeats:true];

GameUpdate:声明如下:

-(void)GameUpdate:(NSTimer*)timer;

问题是,GameUpdate:内的代码永远不会运行。它曾经在xcode 4.2中工作。这是为什么?

1 个答案:

答案 0 :(得分:0)

您需要将新创建的NSTimer对象添加到运行循环中。

lifted from the answer to this related question):正如the docs所说:

  

计时器与运行循环一起使用。要有效地使用计时器,   你应该知道运行循环的运行方式 - 参见NSRunLoop和   线程编程指南。特别注意运行循环保留   他们的计时器,所以您可以在将计时器添加到计时器后释放计时器   运行循环。

如果查看相关问题的其他答案,您将看到如何创建一个NSTimer对象,并将其自动添加到运行循环中。