performSelector:withObject:afterDelay: not working from scrollViewDidZoom
I think that timer events are ignored during tracking (when a finger is down in order to scroll or zoom). You might have to perform the selector in a different mode (see [NSObject performSelector:withObject:afterDelay:inModes:]
). Specifically, try using @[NSRunLoopCommonModes]
for the mode.
Just to add onto what Brian said - here's my implementation of his answer:
[self performSelector:@selector(callMethod) withObject:0 afterDelay:1.0 inModes:@[NSRunLoopCommonModes]];
Note - inModes:
takes an array of modes.