cod*_*der 5 android hyperlink webview loaddata
我使用以下代码加载电子书的html内容,其中templateString包含连接到主文件中的样式表和图像的html内容。
String itemURL = "file://" + itemPath;
testWV.loadDataWithBaseURL(itemURL, templateString, "text/html", "UTF-8", "about:blank");
Run Code Online (Sandbox Code Playgroud)
我面临的问题是锚链接根本没有响应。
我注意到itemURL为null还是使用loadData而不是loadDataWithBaseURL,这些链接都可以工作,但是我松开了图像的连接以及通过itemURL连接的样式。
请注意,Webview可见性始终设置为可见。
这是为Webview初始化的onTouch方法:
this.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
WebView.HitTestResult hr = ((WebView)v).getHitTestResult();
System.out.println("getExtra: "+hr.getExtra());
// getExtra always gives null when webview loaded with loadDataWithBaseURL while it should give the url of the link pressed when the user touches a link
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
似乎问题与 baseURL 无关,而是与连接到 WebView 的 css 文件有关。如果缺少 baseURL,则不会加载 css 文件,从而使脚注可单击。
css 文件中导致问题的代码行是:
pointer-events: none;
Run Code Online (Sandbox Code Playgroud)
因此,如果有人正在寻找一种使 webview 非交互式的方法,这就是一种方法。
感谢每个对这个问题做出贡献的人。