【问题标题】:transmit touch events from uiview to uiwebview将触摸事件从 uiview 传输到 uiwebview
【发布时间】:2010-08-04 17:22:43
【问题描述】:

如何在不使用未记录方法的情况下将触摸事件从 uiview 发送到 uiwebview?

我的问题是当用户触摸 uiwebview 时隐藏/显示标签栏和导航栏。这实际上需要自定义不建议的 uiwebview。我打算在 uiwebview 顶部放置一个透明视图,然后从那里接收触摸事件,使用它们,然后将其发送到 uiwebview。为此,我想知道如何将触摸事件从视图发送到 webview。

【问题讨论】:

    标签: iphone uiview uiwebview touch


    【解决方案1】:

    这是完全可能的。您需要将包含 UIWebView 或 UIWindow 的 UIView 子类化,然后中继触摸事件。参考this post

    【讨论】:

      【解决方案2】:

      这似乎是不可能的。您可以使用自定义叠加来捕获触摸事件,但无法调用您自己的 UITouch 事件,也无法更改现有 UITouch 对象的目标视图。

      换句话说:只要手指碰到屏幕,创建的触摸事件就会包含目标。之后,它被刻在石头上,webview 永远不会响应它。 (有人请证明我错了!)

      接下来最好的事情——我不推荐——是确定页面是否正在滚动,等待

      [[browser stringByEvaluatingJavaScriptFromString:@"scrollY+scrollX"] intValue];
      

      在循环中变为非零。 Javascript 评估似乎有点慢;至少你不能每秒这样做 10 次。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-11-21
        • 2013-11-09
        • 2011-05-07
        相关资源
        最近更新 更多