ExclusiveTouch

ExclusiveTouch的作用是:可以达到同一界面上多个控件接受事件时的排他性,从而避免bug。也就是说避免在一个界面上同时点击多个UIButton导致同时响应多个方法。

  • (void)setExclusiveTouchForButtons:(UIView *)myView {

        for (UIView * v in [myView subviews]) {
    
              if([v isKindOfClass:[UIButton class]]) {
    
                    [((UIButton *)v) setExclusiveTouch:YES];
    
               }else if ([v isKindOfClass:[UIView class]]) {
    
                     [self setExclusiveTouchForButtons:v];
    
                }
    
         }
    

}

看见有人用这个来控制UIButton 的ExclusiveTouch属性,这样需要在每个控制器都要设置。可用一句话来代替这样的设置,在AppDelegate启动应用时添加 [[UIButton appearance] setExclusiveTouch:YES];

注意:下面有个同学提醒-->这个方法仅支持iOS 8.0+系统。

你可能感兴趣的:(ExclusiveTouch)