1. 一般情况下,WebView在加载一个网页之后,如果其中有点击事件,即点击之后会跳转到另一个网页,此时会打开外部浏览器,而不是在本WebView上跳转。若要继续在此WebView中跳转,需要进行下面的设置
webview.setWebViewClient(new WebViewClient() {
// 重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
2. WebView加载网页后,需要设置网页是否支持放大缩小
//是否使用WebView内置的放大机制,貌似设置了这条以后下面那条不用设置了
webSettings.setBuiltInZoomControls(true);
//设置WebView是否支持放大
webSettings.setSupportZoom(true);
3. 如果想让网页自适应屏幕的话,需要设置
//以下两条设置可以使页面适应手机屏幕的分辨率,完整的显示在屏幕上
//设置是否使用WebView推荐使用的窗口
webSettings.setUseWideViewPort(true);
//设置WebView加载页面的模式
webSettings.setLoadWithOverviewMode(true);
------ 以下为代码片段
webview = (WebView) findViewById(R.id.webview);
WebSettings webSettings = webview.getSettings();
webSettings.setJavaScriptEnabled(true);
//是否使用WebView内置的放大机制,貌似设置了这条以后下面那条不用设置了
webSettings.setBuiltInZoomControls(true);
//设置WebView是否支持放大
webSettings.setSupportZoom(true);
//以下两条设置可以使页面适应手机屏幕的分辨率,完整的显示在屏幕上
//设置是否使用WebView推荐使用的窗口
webSettings.setUseWideViewPort(true);
//设置WebView加载页面的模式
webSettings.setLoadWithOverviewMode(true);
webview.setWebViewClient(new WebViewClient() {
// 重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
// 重写此方法可以让webview处理https请求
@Override
public void onReceivedSslError(WebView view,
SslErrorHandler handler, android.net.http.SslError error) {
handler.proceed();
}
});
webview.loadUrl(url);
个人微信公众号,有兴趣的可以扫一扫关注哦~~~哈哈哈