Method invocation with timer is something every developer sometime needs. First you make an instance of NSInvocation class and you add invocationWithMethodSignature.
invocationWithMethodSignature consists of method selector (which method your invocation will trigger) and target (which object is target). Next you make instance of NSTimer class to define repeat interval. See example below.
- (void) viewDidLoad {
NSInvocation *updateDisplayInvocation = [NSInvocation invocationWithMethodSignature:[self methodSignatureForSelector: @selector (myMethod)]];
[updateDisplayInvocation setSelector: @selector (myMethod)];
[updateDisplayInvocation setTarget: self];
NSTimer *audioDisplayUpdateTimer;
audioDisplayUpdateTimer = [NSTimer scheduledTimerWithTimeInterval:3.0 invocation:updateDisplayInvocation repeats:YES];
[super viewDidLoad];
}
- (void) myMethod {
NSLog(@"Method execution");
}
And that is it!


Hi,
I have tried the same thing what you have explained above but after the time interval it is not at all going inside the method “my method”.
Please help me out.
Thanks
Hm, create new xcode project and paste this code to viewController that is initially loaded. It works just fine.