由于最近的工作一直要用webView加载网页,所以一直在研究它,遇到的问题有:
1 首先,应该在自己的webView里面加载网址并显示成web页面
2 在页面没有加载完成时,不显示,而是显示进度条
3 页面的重加载问题,(PS:关于重加载,不懂得可以百度,大概意思就是你要加载的那个网址不是真正的你要加载的网址,它中间会有一个跳转)
4 重加载之后的返回问题
现在,我们来解决上面的问题,想要在自己的webView里面加载网址,必须重写webView 的webViewClient对象,并设置webView可以加载javascript,
2 解决问题2,就是在重新的WebViewClient中复写两个方法,onPageStart()和onPageFinished()方法,然后在方法里面写你要显示隐藏的View
最后,重加载问题和返回的问题就一起讲,其实如果你要实现的界面不是很复杂的话,上面的内容就足够了,也可以解决重加载的返回问题
上一段代码:
WebSettings webSetting = wvDirect.getSettings();
// webSetting.setDomStorageEnabled(true);
webSetting.setJavaScriptEnabled(true);
//设置缩放
webSetting.setSupportZoom(false);
webSetting.setBuiltInZoomControls(false);
wvDirect.setWebViewClient(new WebViewClient(){
@Override
public void onPageFinished(WebView view, String url) {
rlBrowserEmpty.setVisibility(View.GONE);//加载布局
slidingLayout.setVisibility(View.VISIBLE);//webView布局
super.onPageFinished(view, url);
}
@Override
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
view.loadUrl("file:///android_asset/error.html");
super.onReceivedError(view, errorCode, description, failingUrl);
}
});
最后说一句:这篇博客纯属突然,将自己工作中遇到的问题记下来而已,所以也没有写demo,请大家见谅,有什么问题也可以互相交流。