1

我想调用一个方法 24 次,但在每次调用之间我想要 1 秒的间隔,现在正在使用

[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(loadNumber) userInfo:nil repeats:YES];

但是如何计算调用,我想在 24 计数后使计时器无效,我可以使它无效。

4

2 回答 2

1

为 an 创建一个实例变量,int不管你怎么称呼它。在调用计时器之前将其设置为“0”。

someInt = 0;
[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(loadNumber:) userInfo:nil repeats:YES];

在时间调用的操作中,检查此数字的值以确保应执行操作并增加数字。

- (void)loadNumber:(NSTimer *)sender
{
    if (someInt <= 24) {
        //do something
        someInt ++;
    }else{
        [sender invalidate];
        someInt = 0;
    }
}
于 2012-10-30T11:47:09.743 回答
0

您应该在 中设置一个计数器loadNumber,这将使您NSTimer在所需的重复计数后失效。

于 2012-10-30T11:37:00.350 回答