忽略barButton上的触摸

时间:2013-11-13 17:32:11

标签: ios objective-c ipad uisplitviewcontroller

我制作了一个自定义拆分视图控制器,我尽可能地尝试模仿标准控制器。

我拥有的一项功能是,如果设备处于纵向状态且显示主视图,则点击详细信息视图时,主视图将隐藏。

我在详细信息视图中使用此代码来完成此任务。

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
     return [super hitTest:point withEvent:event];
}

- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event
{
    // Detect touches on the details View and notify the Split View controller
    if(point.y != self.touchLocation.y)
    {

       if (_delegate && [_delegate respondsToSelector:@selector(detailsViewDidTapDetails:)])
            [_delegate detailsViewDidTapDetails:self];
    }
    return [super pointInside:point withEvent:event];
}

我遇到的问题是,如果detailsView填充了具有自己导航栏的视图,则导航栏中按下的任何按钮都会触发上面显示的“详细信息视图点击”方法。这与添加放置在导航栏中的“显示详细信息”按钮有冲突。基本上发生了什么,隐藏/显示主视图的方法是两次背靠背调用。

我需要一种方法来忽略我的“隐藏/显示详细信息”按钮上的任何点按。我有一个按钮的引用,我只需要在我的hitTest / pointsInside方法中忽略它的点击。

0 个答案:

没有答案