iPhone - cancelPerformSelectorWithTarget not working
If I do this in a subclass of UIView:
[self performSelector:@selector(doSomething) withObject:nil afterDelay:5开发者_开发知识库];
Then cancel it like this (I've tried both versions):
[[NSRunLoop currentRunLoop] cancelPerformSelectorsWithTarget:self];
//[[NSRunLoop mainRunLoop] cancelPerformSelectorsWithTarget:self];
The "doSomething" method still gets called. What am I doing wrong?
In the NSObject class reference:
cancelPreviousPerformRequestsWithTarget:selector:object:
Cancels perform requests previously registered with performSelector:withObject:afterDelay:.
Use:
[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(doSomething) object:nil];
Hope this helps.
精彩评论