我正在从网络视图从数据库加载loadDataWithBaseURL()
函数,并试图随后跳转到锚点。当我在使用loadUrl()
功能的webview下方放置一个按钮时,它会跳转到锚点。但是,如果我将loadUrl()
放在loadDataWithBaseURL()
之后,则表示页面未找到。Android Webview,使用锚点
webview.loadDataWithBaseURL("app:myhtml", data, "text/html", "UTF-8", null);
webview.loadUrl("app:myhtml#tips");
我以为这是因为负载尚未完成,因此无法找到锚,但我想一个循环来等待它getProgress()
等于100,并且已经证实它的前到达100该命令执行,但它仍然不会找到页面,除非它与按钮单击关联。
任何想法如何我可以从数据库中加载一个页面,然后同时跳转到一个锚点。我正在使用Android 2.1 SDK。
感谢您的帮助,我通过添加这一小段代码直接加载到我的锚点。不过,我无法在页面上滚动,它开始移动然后快速返回。我怀疑是因为它每次都将页面重新加载到该锚点。我对Android和Java甚至是新手,所以这可能是你的建议的错误实现,但我当然会赞赏更多的方向。这里是我使用的代码:
webview.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(webview, "app://data");
webview.loadUrl("app://data#tips");
}
});
看来这是一个无限循环。
检查这个答案http://stackoverflow.com/questions/11188348/android-html-anchor-link-works-only-once-in-webview/11205345#11205345 – MKJParekh