Android 链接有时在WebView中不起作用

Android 链接有时在WebView中不起作用,android,webview,hyperlink,Android,Webview,Hyperlink,有时,WebView中的链接不会响应。突出显示的“按”颜色将出现在它们周围,但不会发生任何变化。我还使用WebViewClient的shouldOverrideUrlLoading,发生这种情况时不会调用该函数 编辑: 我把这个问题缩小到以下情况: 该网页是WebView打开的第一个页面 该网页在html头部使用meta name=“viewport”属性 WebView正在使用WebView.getSettings().setUseWideViewPort(true) Android 2.1

有时,WebView中的链接不会响应。突出显示的“按”颜色将出现在它们周围,但不会发生任何变化。我还使用WebViewClient的shouldOverrideUrlLoading,发生这种情况时不会调用该函数

编辑:

我把这个问题缩小到以下情况:

  • 该网页是WebView打开的第一个页面
  • 该网页在html头部使用meta name=“viewport”属性
  • WebView正在使用WebView.getSettings().setUseWideViewPort(true)
  • Android 2.1(在更高版本中似乎不会出现,之前没有测试过)

如果打开满足上述条件的网页,则没有链接可用。如果加载了另一个类似的页面,这些链接也将不起作用。只有在加载没有meta name=“viewport”的页面时,链接才会开始工作。打开一个没有该meta属性的页面,然后加载一个带有meta viewport属性的页面后,链接开始工作。

这似乎是一个荒谬的解决方法,但我想它可以工作。第一次加载WebView时,如果加载一个空白的虚拟html文件,如

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title></title>
</head>
<body>
</body>
</html>


在加载任何其他内容之前,它似乎已经解决了问题。看起来还必须首先完全加载虚拟文件,而不仅仅是开始加载。

只是跟进这个问题:op解决方案对我不起作用。但是我在
WebView
上将
setLongClickable
设置为
false
,它完全停止了
WebView
以响应触摸事件,但仅在
Android 2.1

删除该行:

webview.setlongclickable(false); 
使
WebView
再次响应并按预期工作