NO
如果某个条件(选择器是)为真,我想要一个 NSTimer 每隔 x 秒触发一次选择器。x 的值应该像这样变化 - 10、20、40、60、120。
如果选择器更改为YES
(它返回 a BOOL
),则计时器应停止并将其初始时间更改为 10 秒。
我有这个计时器代码:
double i;
for (i= 10.0; i < maxInternetCheckTime; i++) {
[NSTimer scheduledTimerWithTimeInterval:i
target:self
selector:@selector(checkForInternetConnection)
userInfo:nil
repeats:NO];
NSLog(@"Timer is %f seconds", i);
}
但是我得到的输出并不是我一开始想要看到的:
2012-12-21 19:25:48.351 Custom Queue[3157:c07] Timer is 10.000000 seconds
2012-12-21 19:25:48.352 Custom Queue[3157:c07] Timer is 11.000000 seconds
2012-12-21 19:25:48.352 Custom Queue[3157:c07] Timer is 12.000000 seconds
2012-12-21 19:25:48.352 Custom Queue[3157:c07] Timer is 13.000000 seconds
2012-12-21 19:25:48.352 Custom Queue[3157:c07] Timer is 14.000000 seconds
2012-12-21 19:25:48.352 Custom Queue[3157:c07] Timer is 15.000000 seconds
等等。在这个非常微不足道的任务中我做错了什么?