Is there a way to make UIBarButtonItem
exclusive touch? At the moment you can select multiple at the same time and it keeps crashing my application.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Slightly easier method than subclassing the navbar but the same idea;
for(UIView *temp in self.navigationController.navigationBar.subviews)
{
[temp setExclusiveTouch:YES];
}
Put this just after you add your bar button items.
回答2:
I managed this problem by subclassing UINavigationBar and overriding layoutSubviews method. Something like this:
- (void)layoutSubviews {
[super layoutSubviews];
for (UIView *view in self.subviews) {
view.exclusiveTouch = YES;
}
}
回答3:
Dredging up the past I apologise. I stumbled into this and hoped there was a better way than looping through subviews.
I found that the following makes the UIBarButtonItems exclusive:
[self.navigationController.navigationBar setExclusiveTouch:YES];
iOS7 may have made exclusive touch inherited.
回答4:
In iOS 7 it wasn't working. I have used this method to try fix it.
for(UIView *temp in self.navigationController.navigationBar.subviews){
[temp setExclusiveTouch:YES];
for(UIView *temp2 in temp.subviews){
[temp2 setExclusiveTouch:YES];
}
}
回答5:
This does not work for UIBarButtonItem created using initWithTitle