【问题标题】:Presentation overlay for iOSiOS 的演示叠加层
【发布时间】:2013-01-04 22:49:05
【问题描述】:

当我向远程团队演示我的触摸应用程序时,另一端的人不知道我在触摸哪里。为了解决这个问题,我一直在研究一个事件拦截视图/窗口,它可以显示对应用程序的触摸。无论我调用 nextResponder 的变化有多大,我都无法对触摸做出反应并将其传递给下面的控制器。特别是滚动视图不会做出反应,按钮也不会。

有没有办法获取一个事件,获取它的位置,然后将它传递给最初会响应它的组件(下面的控制器)?

更新:
我在 UIView 方面取得了一些进展。新视图总是返回 NO 到 pointInside。这适用于触摸开始时,但它不跟踪移动或释放。 是否有向触摸添加手势识别器以跟踪其事件生命周期的策略?

【问题讨论】:

  • 我没有真正的答案,但我注意到 UIApplication 文档中有一行说:“您可能决定继承 UIApplication 以覆盖 sendEvent:sendAction:to:from:forEvent: 实现自定义事件和动作调度。"

标签: ios touchesbegan touchesmoved first-responder becomefirstresponder


【解决方案1】:

您可以尝试创建自己的 UIApplication 子类,以覆盖 sendEvent:。您的实现应调用 [super sendEvent:event] 并根据需要处理事件。

更新您的main.m 并将您的自定义UIApplication 类的名称作为第三个参数传递给UIApplicationMain 的调用。

【讨论】:

    【解决方案2】:

    经过更多尽职调查后,我发现了自己的疏忽。在顶部并显示触摸的层中,需要将用户交互设置为 false。一旦我将其设置为 false,我就可以使用该图层进行显示,同时在下面的图层上捕获事件。该项目还没有完成,但我离我更近了一步。

    保重, 乔

    【讨论】:

      猜你喜欢
      • 2013-03-29
      • 1970-01-01
      • 2012-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多