iOS 开发_防止按钮暴力点击

【作者前言】:13年入圈,分享些本人工作中遇到的点点滴滴那些事儿,17年刚开始写博客,高手勿喷!以分享交流为主,欢迎各路豪杰点评改进!

1.应用场景:

很多时候,我们需要对特定的按钮进行一下事件的相应控制,避免暴力点击重复调用按钮的象印事件;

2.实现目标:

通过一定的方法规避掉暴力点击按钮的行为

3.代码说明:

//方法一:通过系统控件的方法响应顺序实现
- (void)buttonClicked:(UIButton *)button{
//多久时间 间隔后才允许再次响应按钮事件
static NSTimerInterval  delayTime = 0.25f;
//点击按钮后,先取消之前的操作,再进行需要进行的操作
[ [self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(buttonClicked:) object:button];
[self performSelector:@selector(buttonClicked: )withObject:button afterDelay:delayTime];
}

//方法二:计时器控制实现
-(void)buttonClicked:(id)sender{
self.button.enabled =NO;
//多久时间 间隔后才允许再次响应按钮事件
static NSTimerInterval  delayTime = 0.25f;
[self performSelector:@selector(changeButtonStatus)withObject:nil afterDelay:delayTime];//防止重复点击
}
-(void)changeButtonStatus{
self.button.enabled =YES;
}
方法三:利用Runtime运行时操作,一般来说Runtime的操作要少用,慎用!不过有些时候利用Runtime处理一些问题也是最高效的,这种方法所有按钮通用~~~
附着一篇资料,供于参考,就不写代码了....
https://www.jianshu.com/p/8e562c24039e
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容