跟踪触摸事件而不覆盖UIWindow和UIApplication中的发送事件方法

时间:2014-03-14 05:12:39

标签: ios uiview uigesturerecognizer touch-event uievent

我正在尝试将新模块的会话管理实施到现有代码库,其中main.mAppdelegateUIApplication文件捆绑在库中< / strong>,我们无权修改它。

我尝试将手势识别器添加到UIWindow方法来跟踪触摸事件,但通常的按键触摸事件是行为不端。

现在我正在计划子类UIView并覆盖触摸开始并点击测试方法,并使我的所有UIView类实现此自定义UIView类。

除了上述方法之外,我们还有更好的方法来跟踪触摸事件吗?

1 个答案:

答案 0 :(得分:2)

最佳方法是覆盖UIApplicationUIWindow发送事件,但在您的情况下不可能。

尝试将UIGestureRecognizer添加到您的应用程序共享UIWindow,然后设置其委托并实现以下委托方法。

-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch 
{
     return NO; 
}

通过返回NO将阻止手势识别器看到此触摸对象。 您可以在此方法中添加用于跟踪触摸事件的实现。