6

我想使用 scheduleTimerWithTimeInterval 在一定时间内执行定期任务,比如说一小时。但是我如何在我的代码上实现。这是我的代码:

timer = [NSTimer scheduledTimerWithTimeInterval: 0.1
                                          target: self
                                        selector: @selector(doSomething:)
                                        userInfo: nil
                                         repeats: YES];
4

1 回答 1

6

让我们假设一分钟。

这是简单的场景,

int remainingCounts;
NSTimer *timer;

timer = [NSTimer scheduledTimerWithTimeInterval:1 target:(self) selector:@selector(countDown) userInfo:nil repeats:YES];
remainingCounts = 60;   // int remainingCounts ;...

每秒调用一次方法。

-(void)countDown {
    NSLog(@"%d", remainingCounts);
    // Do Your stuff......
    if (--remainingCounts == 0) {
        //[self dismissViewControllerAnimated:YES completion:nil]; 
        [timer invalidate];
    }
}
于 2013-06-21T04:48:16.540 回答