我正在激活计时器以调用webservice api以与details进行同步。在获取用户的详细信息后,我正在激活此timer.i调用activateSyncTimer,如果之前已激活的计时器,我将取消其中。也将在viewwilldisappear中调用clearSyncTimer。但是在控制台中我看到计时器没有失效。我正在使用ipad并且项目是弧形的
- (void)activateSyncTimer {
[self clearSyncTimer];
if (self.canTakeTest && [[NSUserDefaults standardUserDefaults] boolForKey:kIsLoggedIn]) {
self.syncTimer = [NSTimer scheduledTimerWithTimeInterval:10 target:self selector:@selector(syncTestWithServer) userInfo:nil repeats:YES];
[[NSRunLoop mainRunLoop] addTimer:self.syncTimer forMode:NSDefaultRunLoopMode];
}
}
- (void)clearSyncTimer {
if (self.syncTimer != nil) {
[self.syncTimer invalidate];
self.syncTimer = nil;
}
}
答案 0 :(得分:0)
尝试删除此行
[[NSRunLoop mainRunLoop] addTimer:self.syncTimer forMode:NSDefaultRunLoopMode];
如果调用方法scheduledTimerWithTimeInterval: target: selector: userInfo: repeats: