3

我一直在研究如何使用嵌入在 UIScrollView 中的 UIWebView 一段时间,但似乎无法找到解决我问题的简单方法。我正在使用 UIWebView,因为 UITextView 虽然允许超链接,但不允许您更改标准蓝色苹果集的链接颜色。

但是使用 UIWebView 引入了另一个问题:它阻止了它嵌入的 UIScrollView 处理滚动事件,因为 UIWebView 在它自己的私有实现中处理这些事件。

虽然这允许我使用它的嵌入式链接,但 UIWebView 吸收了触摸事件,这不允许我在 UIWebView 本身内拖动时向上/向下滚动。我通过在 UIWebView 上放置一个透明的 UIView 覆盖来解决这个问题,拦截它接收到的触摸事件,并将其作为第一响应者退出,以便它们都是子视图的 UIScrollView 可以适当地处理滚动。

然而,现在,我似乎无法想到解决这个引入的新问题:我无法单击 UIWebView 中位于 UIView Overlay 下方的链接。

将触摸事件转发到我的透明 UIView 正下方的 UIWebView 以触发我的 UIWebView 的委托方法“webView:shouldStartLoadWithRequest:navigationType:”以点击链接的最佳方法是什么?

4

1 回答 1

-1

来自 UIWebView API 文档的仅供参考:

重要提示:您不应该在 UIScrollView 对象中嵌入 UIWebView 或 UITableView 对象。如果这样做,可能会导致意外行为,因为两个对象的触摸事件可能会混淆并错误处理。

回到问题,

UIWebView 具有名为 scrollView 的属性,尝试执行以下操作:

webView.scrollView.scrollEnable = NO;
于 2013-07-09T20:33:28.627 回答