0

我有一个覆盖视图(覆盖整个屏幕),我可以接收触摸,但它不会将它们传递给响应者链。

我像这样添加子视图:

UIWindow *mainWindow = [[UIApplication sharedApplication] keyWindow];
[mainWindow insertSubview:self.view aboveSubview:mainWindow];

如果我使用 addSubview 或 insertSubview 似乎并不重要。

我的 touchesBegan 看起来像:

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{        
    //do some stuff here..
    [super touchesBegan:touches withEvent:event];
}

如果我使用 SUPER 或 self.nextResponder 等的各种其他组合,这似乎并不重要。

最后,我需要一个覆盖整个屏幕的覆盖视图,我需要检测触摸然后将它们传递给它们下面的视图/视图控制器。

谢谢!

4

1 回答 1

0

你是 addView 到 mainWindow,你的超级视图是 mainWindow,而不是 viewBlow 它。

您需要将视图添加到 VC 的视图中,如果您想要全屏。将状态栏设置为隐藏(或透明。未尝试),然后将视图的框架设置为(0,-20,重量,高度+20)。

于 2013-05-18T09:10:14.423 回答