iOS--同时点击多个Button的处理

2017-12-25  本文已影响134人  乐逍遥的笔记

    今天发现一个问题,在一个有许多按钮的页面中,如果我同时点击两个按钮(push新页面的按钮),那么那两个按钮的点击事件都会走,并且会同时push两次!那么这个问题应该怎么处理呢:

1.第一种方法,在AppDelegate中,添加如下:

[[UIButton appearance] setExclusiveTouch:YES];

问题就搞定了。

2.第二种方法,为button写一个分类,设置属性button.exclusiveTouch = YES;

拓展:

1.exclusiveTouch是UIView中的一个属性,BOOL类型的,系统默认它是NO,也就是不互斥,可以让多个点击事件同时触发,将其设为YES,就保证了多次点击只触发一个点击事件。

2.将exclusiveTouch设为YES(互斥),那么当你点击按钮不松开的时候,点击其他按钮是不会有响应事件的触发。

3.点击事件是可以缓存的,例如当主线程被阻塞的时候。如果我们对按钮做重复点击的话,会造成重复响应。

上一篇下一篇

猜你喜欢

热点阅读