只让本应用程序的webview加载网页,而不调用外部浏览器打开的办法就是:设置WebViewClient,并重写WebViewClient的shouldOverrideUrlLoading方法返回true
- mWebView.setWebViewClient(newWebViewClient(){
- @Override
- publicbooleanshouldOverrideUrlLoading(WebViewview,Stringurl){
- //TODOAuto-generatedmethodstub
- view.loadUrl(url);
- returntrue;
- }
- });
原因: WebViewClient的shouldOverrideUrlLoading方法的默认实现是直接返回false的:
- /**。。。。。。。
- *@paramviewTheWebViewthatisinitiatingthecallback.
- *@paramurlTheurltobeloaded.
- *@returnTrueifthehostapplicationwantstoleavethecurrentWebView
- *andhandletheurlitself,otherwisereturnfalse.
- */
- publicbooleanshouldOverrideUrlLoading(WebViewview,Stringurl){
- returnfalse;
- }