在iOS开发中通常会遇到,两个靠的很近的按钮,一不小心两个按钮同时点击了。神奇的bug就产生了,如果两个按钮事件都是跳转页面的话,就会出现连跳两个页面的情况。
通常解决此问题的方法是:定义一个BaseViewController。设置一个方法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]]){
[self setExclusiveTouchForButtons:v];
}
}
}
然后在viewDidDisappear中调用次方法。
- (void)viewDidDisappear:(BOOL)animated
{
[self setExclusiveTouchForButtons:self.view];
}
其他所有ViewController都继承这个BaseViewController就行了。
好了问题解决了~~~~~~~~