我正在制作一款电子书阅读器,使用epub格式将书籍加载到web视图中。在一些书籍中,存在指向同一章节中某些部分的锚点链接。每个章节都以html格式加载。以下是该链接的样式:
file:///storage/sdcard0/Android/data/com.abc.reader/files/Download/498935/epub/resources/498935/OEBPS/#footnote-165093-1-backlink
我尝试使用 shouldOverrideUrlLoading()
方法获取回调,但它没有被调用,当我在 onPageFinished
中点击链接时,显示的 URL 是 about:blank
reader.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
Log.w("TESTTESTOVERRIDE "+url);
view.loadUrl(url);
return false;
}
@Override
public void onPageFinished(WebView view, String url) {
// after the data has been loaded, the following is executed
// TODO Auto-generated method stub
super.onPageFinished(view, url);
System.out.println("check.... onPageFinishedEntered.."
+ url.toString());
view.loadUrl(jsfileloadurl);
}
有任何想法吗?
编辑:在4.1设备中,我可以正确地获取锚点链接,但在4.4或5.0中,它是关于:空白的。 (在这两种情况下,shouldOverrideUrlLoading
都没有被调用)
return true;
,然后再试一次。 - SRB Bans