问题:当我同时点击两个按钮时,我的应用程序挂起。我的按钮是
通知中心标签http://imageshack.com/a/img59/676/ob8s.png
如何解决这个问题。有一种方法可以优先使用这些按钮。
谢谢。
如果您想将触摸限制为仅一个按钮,请使用
[myButton setExclusiveTouch:YES];
使用带延迟的执行选择器。假设您正在调用btnCicked:方法来同时单击两个按钮。
-(void) btnClicked:(id) btn {
[NSObject cancelPreviousPerformRequestsWithTarget:self]
[self performSelector:@selector(executeOperation:) withObject:nil afterDelay:0.05];
}
-(void) executeOperation:(id) btn {
if(btn == btn1) {
//operation 1
}
else {
//operation 2
}
}
iOS应该先调用一个IBAction方法,然后再调用下一个。
添加一个"actionInProgress"实例变量。
当用户点击某个按钮时,请检查该按钮是否为==是。如果是,忽略按钮按下。然后继续处理按钮操作,完成后将actionInProgress设置为FALSE。
或者,在每个IBAction方法中,您可以将另一个按钮的禁用标志设置为YES,以防止第二次单击按钮。