webview 内のリンクをクリックすると、 shouldOverrideUrlLoading() が呼び出されることはありません。(トーストは表示されず、何も記録されません)。onPageFinished も試しましたが、呼び出されません。ユーザーがこれが時々呼び出されないという問題を抱えている他の投稿を読みましたが、私の場合は完全に無視されています。
webview = new WebView(MyActivity.this);
webview.getSettings().setBuiltInZoomControls(true);
webview.getSettings().setDisplayZoomControls(false);
webview.loadData(Html.getHtml(), "text/html", "UTF-8");
webview.getSettings().setJavaScriptEnabled(true);
webview.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
new M("shouldOverrideUrlLoading",getApplicationContext());
Log.v("ESSE3", "shouldOverrideUrlLoading()");
System.out.println(url);
System.out.println(Html.getHtml());
webview.loadData(Html.getHtml(), "text/html", "UTF-8");
return true;
}
});
webview.setWebViewClient(new WebViewClient());
setContentView(webview);
javascript を有効にして、または有効にせずに試してみたり、メソッド内で true または false を返したりしました。