【发布时间】:2011-12-11 13:50:01
【问题描述】:
这里我有一个设置 NSTimer 对象的 fireDate 的代码。
-(void)TimerFired:(NSTimer*)timer{
long startTime=random()%1500+500;
[timer setFireDate:[NSDate dateWithTimeIntervalSinceNow:startTime/1000.0]];
[controller startCarFromLane:self];
}
在上面的代码中,当我编写 :startTime/1000.0 时,我会在相当长的时间后触发计时器。但是,如果我将其更改为 :startTime/1000 (不带 .0) 计时器的下一个 fireDate 与上述情况不同,则计时器会更频繁地触发。我知道 dateWithTimeIntervalSinceNow 方法需要一个 NSTimeInterval ,它是 double 的 typedef。但是我不能把 10.0 写成 10 吗? .0 对价值有何影响?
【问题讨论】:
-
你可以改为写
(float) 1000,但如果你像我一样懒惰,你会选择更短的1000.0。
标签: objective-c ios nstimer