我的 Android 应用中有一个 WebView,它使用 loadDataWithBaseURL() 方法加载 HTML 字符串。问题是本地 anchor 链接(<a href="#link">
...)无法正常工作。单击链接时,它会突出显示,但不会滚动到相应的 anchor 。
如果我使用 WebView 的 loadUrl() 方法加载包含 anchor 链接的页面,这也不起作用。但是,如果我在浏览器中加载相同的 URL, anchor 链接确实可以工作。
是否需要任何特殊处理才能使这些对 WebView 起作用?
我正在使用 API v4 (1.6)。
代码不多,以下是我一直在使用的一些测试代码的相关部分:
WebView detailBody = (WebView) findViewById(R.id.article_detail_body);
String s = "<a href=\"#link\">LINK!</a><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><a name=\"link\"></a>Testing!";
detailBody.loadDataWithBaseURL(API.HomeURL(this), s, "text/html", "utf-8", "");
最佳答案
看起来问题是我在 ScrollView 中有一个 WebView。像这样配置时,WebView 无法滚动到 anchor 链接。在重构我的布局以消除 ScrollView 后, anchor 链接可以正常工作。
关于Android Webview anchor 链接(跳转链接)不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3039555/