0

我有一个 webview 和我在该 webview 上加载的 URL 上的链接,我希望这样,如果用户单击此链接,应用程序将转到后台并使用该设备的默认 web 浏览器打开该链接。为此,我做了以下工作:

web = (WebView) findViewById(R.id.webview01);
        progressBar = (ProgressBar) findViewById(R.id.progressBar1);


        web.getSettings().setUseWideViewPort(true);

        web.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
        web.getSettings().setPluginState(PluginState.ON);
        web.getSettings().setJavaScriptEnabled(true);
        web.getSettings().setDomStorageEnabled(true);

        web.setWebViewClient(new WebViewClient() {
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                if (url != null
                        && url.startsWith("http://the6figuremarketer.com/apps/androidfb21/thks.html")) {
                    view.getContext().startActivity(
                            new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
                    return true;
                } else {
                    return false;
                }
            }
        });

        web.loadUrl("http://the6figuremarketer.com/apps/androidfb21/index.html");

但我发现该shouldoverrideurl方法是被调用的。我现在该怎么办?谁能帮忙?

4

1 回答 1

0

在 WebView 中查看shouldOverrideUrlLoading for Android not running

在 webview 上调用 loadurl 时不会调用 shouldOverrideUrlLoading()。只有当您单击 webview 中的链接时才会调用它。

于 2013-06-04T02:07:02.077 回答