0

我有一个倒计时 TextField,我喜欢在我的 iPhone 应用程序中每分钟自动更新一次。

当特定屏幕可见时,它应该倒计时 - 当切换到另一个屏幕时,倒计时显然不能更新。

返回屏幕时,倒计时应再次继续...

处理这个的正确方法是什么?

非常感谢!

4

1 回答 1

2

我会使用一个NSTimer. 这是NSTimer的文档。

这是一段关于如何设置计时器并让它调用方法的代码片段:

NSTimer *theTimer = [NSTimer timerWithTimeInterval:60 target:self selector:@selector(updateTime) userInfo:nil repeats:NO];

此计时器将在updateTime每次触发时调用该方法。我已将其设置为不重复,而是在每次调用该updateTime方法时创建一个新计时器。这样,如果您离开UIViewController后面,它将不会继续射击NSTimer

这是一个通用updateTime方法:

-(void) updateTime
{
    //Update user interface

    NSTimer *theTimer = [NSTimer timerWithTimeInterval:60 target:self selector:@selector(updateTime) userInfo:nil repeats:NO];
}

timeInterval秒为单位,因此此计时器将每 60 秒触发一次。您可能希望将其缩短一点,例如 30 秒,甚至 1 秒,然后检查系统时间以查看何时需要更新倒计时。

我希望这会有所帮助!

于 2012-07-19T21:57:55.630 回答