今天在做webview加载Jquery Mobile开发的网页的时候出现了一个问题,使用WebView的LoadUrl()的方法 加载网页的时候不是在WebView显示已经加载的页面,而是在系统的
浏览器中打开的,后来经查资料得知,原来Android中的WebView在加载网页的时候,默认是使用第三方框架或者系统自带的浏览器打开网页的,如果想让网页在webview加载则需
要重写webview的shouldOverrideUrlLoading方法,代码如下:
webview=(WebView)this.findViewById(R.id.mywebview);
webview.loadUrl("http://192.168.138.220:8080/zq/jquery_mobile.html");
//覆盖WebView默认使用第三方或系统默认浏览器打开网页的行为,使网页用WebView打开
webview.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// TODO Auto-generated method stub
view.loadUrl(url);
//返回值为true的时候是使用webview加载网页的,
//默认为false是使用第三框架或者系统浏览器打开的
return true;
}
});
设置完成之后重新编译,运行就可以了。