-
26-09-2019 - |
题
我有一个带有多个子视图的 UIView 子类,我想在类中处理这些事件:
- 触摸开始:withEvent:
- 触摸移动:withEvent:
- 触摸结束:withEvent:
但我也希望在子视图中调用这些事件。我怎样才能做到这一点?
(我已经尝试过 hitTest,但我只收到 TouchBegan 事件,并且该方法没有发送任何触摸)
解决方案
我已经通过在主窗口覆盖以下方法来解决这个问题:
- (void)sendEvent:(UIEvent*)anEvent
我还检查这是否是正确的事件
if ([[[anEvent allTouches] anyObject] phase] == UITouchPhaseBegan)
我也做同样的事情 UITouchPhaseMoved
和 UITouchPhaseEnded
, ,执行我的自定义代码,然后发送 [super sendEvent:anEvent];
不隶属于 StackOverflow