SubView未被视为MainView的一部分

时间:2015-11-05 05:30:53

标签: ios objective-c uiview uitapgesturerecognizer

我的UIView中有很多子视图,其中很多都有UIButtons。其中一个子视图 - _bottomView(坐标 - (0,519,320,49))出错。它无法识别放置在其中的按钮上的点击事件。

我尝试用UIButton覆盖整个_bottomView,并且该按钮(testButton)中的点击事件也未被识别。

我尝试将tapRecogniser添加到代码中,并从每个点点击,除了_bottomView中的点被识别。 TapRecogniser代码

UITapGestureRecognizer *gr = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleGesture:)];
    [self.view addGestureRecognizer:gr];
    _bottomView.userInteractionEnabled=true;


-(void)handleGesture:(UIGestureRecognizer *)gestureRecognizer {
    CGPoint p = [gestureRecognizer locationInView:self.view];
        NSLog(@"got a tap in the region i care about");
}

我尝试了[self.view addSubview:_bottomView];,这也没有帮助。可能是什么问题?

ViewController

Screen

2 个答案:

答案 0 :(得分:0)

如果您的观点没有接触到

  1. 确保您的UIView userInteractionEnabled设置为YES
  2. 确保视图位于其超级视图的范围内,并且超级视图位于窗口的范围内。您可以使用NSLog(@"%@",NSStringFromCGRect(view.frame));
  3. 打印视图帧

答案 1 :(得分:0)

没有任何帮助。我不得不删除整个View Controller并重做整个事情。这显然解决了这个问题。