只让本应用程序的webview加载网页,而不调用外部浏览器打开的办法就是:设置WebViewClient,并重写WebViewClient的shouldOverrideUrlLoading方法返回true
- mWebView.setWebViewClient(new WebViewClient(){
- @Override
- public boolean shouldOverrideUrlLoading(WebView view, String url) {
- // TODO Auto-generated method stub
- view.loadUrl(url);
- return true;
- }
- });
原因: WebViewClient的shouldOverrideUrlLoading方法的默认实现是直接返回false的:
- /** 。。。。。。。
- * @param view The WebView that is initiating the callback.
- * @param url The url to be loaded.
- * @return True if the host application wants to leave the current WebView
- * and handle the url itself, otherwise return false.
- */
- public boolean shouldOverrideUrlLoading(WebView view, String url) {
- return false;
- }