我有一个带有内容视图的窗口可以执行多项操作,包括管理类似导航控制器的iOS。
窗口的内容视图最前面的视图是一个不可见的自定义视图,用于管理整个窗口的拖放操作,称为DragNDropView。
现在我想管理滑动手势以在导航控制器中导航(仅向左滑动)。 不幸的是,DragNDropView捕获了手势(如果我实现 - (void)swipeWithEvent:并在其上设置acceptTouchEvents:YES),我不希望这样,因为我希望它背后的视图捕获它,所以我当然设置acceptTouchEvents到在DragNDropView上没有。
我很惊讶手势事件没有“下移”视图层次结构,因为当最前面的视图将acceptTouchEvents设置为NO时,下面的视图确实将acceptTouchEvents设置为YES。
如果最前面的视图不处理手势,手势事件不会传递给它后面的视图???? 手势处理似乎在NSResponder中,所以我甚至期望我的NSViewController子类来处理它,但似乎我不能。
任何人都可以帮我理解这个问题吗?