如何防止iOS中同一个UIButton上的多个事件?

前端之家收集整理的这篇文章主要介绍了如何防止iOS中同一个UIButton上的多个事件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想防止在同一个UIButton上连续多次点击.

我尝试使用enabled和exclusiveTouch属性,但它不起作用.如:

-(IBAction) buttonClick:(id)sender{
    button.enabled = false;
    [UIView animateWithDuration:1.0 delay:0.0 options:UIViewAnimationOptionAllowAnimatedContent animations:^{
        // code to execute
     }
     completion:^(BOOL finished){
         // code to execute  
    }];
    button.enabled = true;
}

解决方法

你正在做的是,你只需在块外设置启用开/关.这是错误的,它执行一旦这个方法调用,因此它不会禁用按钮,直到完成块将调用.相反,一旦动画完成,你应该重新启用它.
-(IBAction) buttonClick:(id)sender{
    button.enabled = false;
    [UIView animateWithDuration:1.0 delay:0.0 options:UIViewAnimationOptionAllowAnimatedContent animations:^{
        // code to execute
     }
     completion:^(BOOL finished){
         // code to execute  
        button.enabled = true; //This is correct.
    }];
    //button.enabled = true; //This is wrong.
}

哦,是的,而不是真假,是和否看起来不错.

猜你在找的iOS相关文章