【作者前言】: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
网友评论
不用太理会所谓的官腔话:兴趣就是最好的老师。(哪来那么多的兴趣,要是这样的话,都成了科学家了....小时候,我有一个梦想...^_^)
接触新事物我感觉一般来说都是比较枯燥乏味的,哪有那么多的兴趣去支撑,还是主要靠自己的一个情绪调控。遇到一些拐角和选择的时候,多问问自己为啥...
刚开始找工作,不用太极端,非得做什么什么不可.的心理要不得,
年轻就是资本,年轻就可以失败,年轻就可以跌倒了重来,年轻就可以在失败中去成长
如果是NB的学历,你的起点很好,能帮你夺得很多的面试机会。
如果学历一般,也没什么好泄气的,底气很重要,不断的去问自己能做什么,勇敢去做就行了!
I Believe,I Can!