I’m creating an NSTimer:
NSTimer *saveProgressSizeTimer = [[NSTimer alloc]
initWithFireDate:[NSDate dateWithTimeIntervalSinceNow:2.0f]
interval:1.0f
target:self
selector:@selector(myMethod:)
userInfo:myUserInfo
repeats:YES];
However, the timer doesn’t get fired. The method doesn’t get invoked.
If I print my date I get the following:
2012-10-12 15:19:02.786 MyApp[1768:303] fire date: 2012-10-12 13:21:02 +0000
Shouldn’t it be “2012-10-12 15:21:02” ? Somehow the hours are wrong. But why? If I change the Time Zone from UTC/GMT +1 hour (I’m sitting in Germany) to another, the date is still 2012-10-12 13:19:02 plus two seconds.
What am I doing wrong?
Thanks!
A time created with
initWithFireDatemust be added to a run loop, e.g.Use
scheduledTimerWithTimeIntervalto create a timer that is automatically scheduled on the current run loop.PS: The
descriptionmethod ofNSDateuses always GMT, that probably explains your output.