【问题标题】:Tracking touch event without overwriting send event methods in UIWindow and UIApplication跟踪触摸事件而不覆盖 UIWindow 和 UIApplication 中的发送事件方法
【发布时间】:2014-03-14 05:12:39
【问题描述】:

我正在尝试为现有代码库的新模块实现会话管理,其中 main.mAppdelegateUIApplication 文件捆绑在一个库中,我们有无权修改。

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

现在正计划继承 UIView 并覆盖 touches 开始并点击测试方法并使我所有的 UIView 类实现这个自定义的 UIView 类。

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

【问题讨论】:

    标签: ios uiview uigesturerecognizer touch-event uievent


    【解决方案1】:

    最好的方法是覆盖 UIApplicationUIWindowsend 事件,但在您的情况下这是不可能的。

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-01-30
      • 1970-01-01
      • 2018-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-18
      相关资源
      最近更新 更多