如何避免导航栏中的两个栏按钮可以同时按下?

时间:2013-06-04 02:30:11

标签: ios uinavigationcontroller uinavigationitem

我在我的应用中发现了这个问题。

可以同时触摸“BackBarButton”和“rightBarButton”。然后将调用这两个动作。

我知道 UIView 中有“exclusiveTouch”来解决这类问题。但 UIBarButton 不是它的子类。

有人可以帮帮我吗? 感谢。

1 个答案:

答案 0 :(得分:3)

如果您正在寻找一个干净而通用的案例答案,我没有。

一个不太优雅的解决方案应该适用于您的应用程序。只需在班级中创建一个BOOL标志,并在您主动响应某个UIBarButton按下时进行设置,然后在完成按钮按下后清除它。在每个回复中,只需检查标志。

所以,在你的班级初学者:isBusy = NO;

然后在每个选择器中:

if (!isBusy) {
   isBusy = YES;
   //Do yer stuff for this selector
   isBusy = NO;
}