UIBarButtonItem可在左侧单击,但不在导航控制器右侧

时间:2014-11-19 13:24:15

标签: ios ipad uibarbuttonitem

这是一种非常奇怪的行为,我只是在iOS8 iPad上体验过它。我有一个UIBarButtonItem需要在导航栏的右侧。这是我设置按钮的代码:

        UIBarButtonItem *btnAttOpen = [[UIBarButtonItem alloc] init];
        [btnAttOpen setAction:@selector(addAttClick:)];
        [btnAttOpen setImage:[UIImage imageNamed:@"addAtt"]];
        [btnAttOpen setTarget:self];
        [self.navigationItem setRightBarButtonItem:btnAttOpen];

当我这样做时,btnAttOpen按钮出现在它应该但不可点击的位置。它只是表现为静态图像。最奇怪的部分是如果我用setLeftBarButtonItem替换setRightBarButtonItem:按钮的行为与预期一致。

这对我没有意义。有没有人见过这种行为?关于为什么会出现这种情况的任何想法?谢谢!

1 个答案:

答案 0 :(得分:1)

如果某些内容不想对触摸做出适当的反应,通常问题是父视图框架中的一个框架尺寸不正确,并不能完全覆盖孩子的视线。帧。

例如,您可以通过在gdb中打印视图层次结构来检查它们:po [[UIWindow keyWindow] recursiveDescription]