1、webview支持页面缩放,一般通过以下设置就可满足80%的要求
//缩放开关
webView.getSettings().setSupportZoom(true);
设置此属性,仅支持双击缩放,不支持触摸缩放(在android4.0是这样,其他平台没试过)
// 设置是否可缩放
webView.getSettings().setBuiltInZoomControls(true);
如果设置了此属性,那么webView.getSettings().setSupportZoom(true);也默认设置为true
2、无限缩放
无限缩放,就需要使用大视图模式,如下:
//无限缩放
webView.getSettings().setUseWideViewPort(true);设置此属性,可任意比例缩放。
注:1、初始缩放值可这样设置:webView.setInitialScale(initalValue);
3.webview全屏或者充满父框架
webView.getSettings(). setLoadWithOverviewMode()
//取消滚动条
webView.setScrollBarStyle(View.SCROLLBARS_OUTSIDE_OVERLAY)
//触摸焦点其作用
webView.requestFocus()
4.重写onKeyDown方法
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
//回退,并且webview不是第一页时
if((keyCode == KeyEvent.KEYCODE_BACK)&&wv_home.canGoBack()){
wv_home.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
5.如果希望webview内的链接由自己的app处理,则需要添加监听器(WebViewClient),并实现shouldOverriderUrlLoading(view,url)方法。
其他常用的方法:
onLoadResource 下载资源文件时,比如图片
onPageStart 加载页面前调用
onPageFinish 加载完成时调用
onReceiveError
onReceivedHttpAuthRequest