UIBarButtonItem,设置独家触摸

时间:2012-07-10 09:30:11

标签: xcode touch uibarbuttonitem

有没有办法让UIBarButtonItem独家触摸?目前,您可以同时选择多个,并且不断崩溃我的应用程序。

5 个答案:

答案 0 :(得分:9)

比子类化导航栏稍微简单的方法但是相同的想法;

for(UIView *temp in self.navigationController.navigationBar.subviews)
{
    [temp setExclusiveTouch:YES];
}

在添加条形按钮项后立即放置。

答案 1 :(得分:8)

我通过继承UINavigationBar并覆盖layoutSubviews方法来解决这个问题。像这样:

- (void)layoutSubviews {
    [super layoutSubviews];
    for (UIView *view in self.subviews) {
        view.exclusiveTouch = YES;
    }
}

答案 2 :(得分:3)

疏通过去我道歉。我偶然发现了这一点,并希望有一种比循环子视图更好的方法。

我发现以下内容使UIBarButtonItems独占:

[self.navigationController.navigationBar setExclusiveTouch:YES]; 

iOS7可能已经继承了独家触摸。

答案 3 :(得分:0)

在iOS 7中,它无法正常工作。我已经使用这种方法来尝试修复它。

for(UIView *temp in self.navigationController.navigationBar.subviews){
    [temp setExclusiveTouch:YES];
    for(UIView *temp2 in temp.subviews){
        [temp2 setExclusiveTouch:YES];
    }
 }

答案 4 :(得分:-1)

这对使用initWithTitle

创建的UIBarButtonItem不起作用