3

我希望能够弄清楚 a 中任意 (x,y) 点处的对象是什么WebView,最好不会导致页面上的任何更改。我正在为 Android 开发一个可访问性应用程序,其中需要在激活链接之前识别链接的目标;长按链接(遗憾的是)不是一种选择。

getHitTestResult基本上是我想要的,但仅适用于当前的“光标节点”。我找不到关于这个“光标节点”的任何文档,但我怀疑它需要一个触摸事件才能出现在目标点。

4

1 回答 1

0

不是从一个点找到节点元素的方法,但如果你想覆盖 webview 上的链接单击事件功能,你可以这样做:

使用 setWebViewClient 方法将WebViewClient添加到您的 Web 视图。然后覆盖shouldOverrideUrlLoading()方法并检查给定的目标url

提示:如果它返回 true,则不会加载 url,因为这意味着您的本机应用正在处理它。

代码示例:

 webview.setWebViewClient(new WebViewClient() {
         public boolean shouldOverrideUrlLoading(WebView view, String url) {
              if (isUrlGood(url))
                  return false; //the webview can load the url
              else
                  return true; //avoid the webview from loading this url
         }
 });
于 2013-03-14T12:45:59.403 回答