如何在多个uiwindows之间传递事件

时间:2017-02-18 08:27:15

标签: ios events uiwindow

我正在实施多个uiwindows。

原因是每当其他视图转换时,底部最小视图必须始终保持在顶部。

主窗口位于第二个窗口下方。它提供了一种处理单独视图的绝佳方法,而不会造成任何混淆例如,在主窗口上显示或推送新的视图控制器。

但主要问题不是将事件从第二个窗口传递到主窗口。 第二个窗口除了底部区域外具有透明背景,并且必须将透明背景中的事件传递到第二个窗口。

enter image description here 有没有人知道在分层窗口中处理事件的方法?

1 个答案:

答案 0 :(得分:0)

我在uiwindow中实现了以下代码。 当透明窗口区域中的事件到达时,此代码会将事件传递到下面的窗口。

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

    if (resultView == self) {
        NSLog(@"touched in transparent window !!");
        return nil;
    } else {
        NSLog(@"touched in view!!");
        return resultView;
    }

    return resultView;
 }
相关问题