performSelector取消延迟
我们在View上放置一个Button,预期需求是防止暴力点击,只响应最后一次点击时的事件。
此需求我们可以通过cancelPreviousPerformRequestsWithTarget来进行实现。cancelPreviousPerformRequestsWithTarget的作用为取消当前延时任务。在执行延迟事件前取消当前存在的延迟任务即可实现如上效果。
-
(IBAction)buttonClick:(id)sender {
id params;
[[self class]cancelPreviousPerformRequestsWithTarget:self
selector:@selector(sureTestMethod:)
object:params];
[self performSelector:@selector(sureTestMethod:)
withObject:params
afterDelay:3];
} -
(void)sureTestMethod:(id)objcet {
NSLog(@"sureTestMethodCall");
}
作者:卖报的小画家Sure
链接:https://juejin.im/post/5ccfcdd86fb9a0320a629981
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
网友评论