In iOS development often encounter, two close to the button, accidentally two buttons simultaneously clicked.
The Magic Bug is generated, if the two button events are jump pages, there will be a jump two page situation.
A common workaround for this problem is to define a baseviewcontroller.
Set a method setexclusivetouchforbuttons: (UIView *) MyView
-(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]])
{
[Selfsetexclusivetouchforbuttons:v];
}
}
}
The secondary method is then called in Viewdiddisappear.
< Span class= "Hljs-keyword" >< Span class= "Hljs-keyword" >-( Span class= "Hljs-keyword" >void) Viewdiddisappear: (bool) animated
< Span class= "Hljs-keyword" >< Span class= "Hljs-keyword" >< Span class= "Hljs-keyword" >{
< Span class= "Hljs-keyword" >< Span class= "Hljs-keyword" >< Span class= "Hljs-keyword" > [self Setexclusivetouchforbuttons:self.view];
< Span class= "Hljs-keyword" >< Span class= "Hljs-keyword" >< Span class= "Hljs-keyword" >< Span class= "hljs-variable" >
All viewcontroller inherit this baseviewcontroller, or you can use the run-time override Viewdiddisappear to
Ways to prevent two buttons from being clicked simultaneously in iOS