【问题标题】:Links sometimes not working in WebView链接有时在 WebView 中不起作用
【发布时间】:2011-01-07 17:01:35
【问题描述】:

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

编辑:

我已将此问题缩小到以下情况:

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

如果打开符合上述要求的网页,则没有链接将起作用。如果加载了另一个类似的页面,这些链接也将不起作用。直到您加载没有 meta name="viewport" 的页面,链接才开始起作用。在打开没有该元属性的页面,然后加载具有元视口属性的页面后,链接开始工作。

【问题讨论】:

    标签: android webview hyperlink


    【解决方案1】:

    这似乎是一个荒谬的工作,但我想它有效。第一次加载 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>
    

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

    【讨论】:

      【解决方案2】:

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

      删除线:

      webview.setlongclickable(false); 
      

      使WebView 响应并再次按预期工作。

      【讨论】:

        猜你喜欢
        • 2012-08-05
        • 1970-01-01
        • 2013-12-13
        • 1970-01-01
        • 1970-01-01
        • 2016-05-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多