How to stop NStimer event? [duplicate] How to stop NStimer event? [duplicate] ios ios

How to stop NStimer event? [duplicate]


@interface    NSTimer *autoTimer;@implementation// Start timer    autoTimer = [NSTimer scheduledTimerWithTimeInterval:(3.0)        target:self         selector:@selector(autoTimerFired:)         userInfo:nil         repeats:YES];// Stop timer:    [autoTimer invalidate];    autoTimer = nil;


First, you want to keep a pointer to the timer

self.packetTimer = [NSTimer timerWithTimeInterval:CONNECTION_TIMEOUT target:self selector:@selector(connectionTimeout:) userInfo:nil repeats:NO];[[NSRunLoop currentRunLoop] addTimer:packetTimer forMode:NSDefaultRunLoopMode];

If somewhere else in your code you want to cancel it, just call:

[self.packetTimer invalidate];self.packetTimer = nil;