㈠ android webview 怎么放大缩小
Android:WebView如何设定支持缩放:需要对WebView和WebSettings做一下设定
webview.setVerticalScrollbarOverlay(true); //指定的垂直滚动条有叠加样式
WebSettings settings = webview.getSettings();
settings.setUseWideViewPort(true);//设定支持viewport
settings.setLoadWithOverviewMode(true);
settings.setBuiltInZoomControls(true);
settings.setSupportZoom(true);//设定支持缩放
html界面meta标签
<metaname="viewport"content="height= [pixel_value| "device-height"] ,width= [pixel_value| "device-width"] ,initial-scale=float_value,//初始缩放minimum-scale=float_value,//最小maximum-scale=float_value,//最大user-scalable= ["yes" | "no"]//是否允许用户对页面缩放 "/>
例如:<meta name="viewport" content="width=device-width,user-scalable=yes initial-scale=1.0, maximum-scale=2.0">-->设定支持缩放,最大两倍缩放
㈡ 如何设置android webview默认为高等像素密度
因为Android下浏览器默认的并不是实际像素,而是中像素密度。(注:Android支持三种屏幕像素密度:低像素密度,中像素密度,高像素密度),所以要设置android webview默认为高等像素密度的话,需要在js中设置如下代码:
<metacontent='width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no,target-densitydpi=device-dpi'name='viewport'>
这里面,target-densitydpi的功能就是指定屏幕像素密度DPI。它的参数有:
device-dpi –使用设备原本的 dpi 作为目标dpi。不会发生默认缩放。
high-dpi – 使用hdpi作为目标dpi。中等像素密度和低像素密度设备相应缩小。
medium-dpi – 使用mdpi作为目标dpi。 高像素密度设备相应放大, 像素密度设备相应缩小。这是默认的target density。
low-dpi -使用mdpi作为目标dpi。中等像素密度和高像素密度设备相应放大。
<value> – 指定一个具体的dpi值作为target dpi。这个值的范围必须在70–400之间。
㈢ android webview默认屏幕为中像素密度怎么修改
Android中Webview加载的页面居中显示为中等像素密度的方法如下:
第一种方法:
WebSettings settings = webView.getSettings();
settings.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);
LayoutAlgorithm是一个枚举用来控制页面的布局,有三个类型:
1.NARROW_COLUMNS:可能的话使所有列的宽度不超过屏幕宽度
2.NORMAL:正常显示不做任何渲染
3.SINGLE_COLUMN:把所有内容放大webview等宽的一列中
用SINGLE_COLUMN类型可以设置页面居中显示,页面可以放大缩小
第二种方法:
//设置加载进来的页面自适应手机屏幕
settings.setUseWideViewPort(true);
settings.setLoadWithOverviewMode(true);
第一个方法设置webview推荐使用的窗口,设置为true。第二个方法是设置webview加载的页面的模式,也设置为true。这方法可以让你的页面适应手机屏幕的分辨率,完整的显示在屏幕上,可以放大缩小。
第三种方法:(主要用于平板,针对特定屏幕代码调整分辨率)
java">DisplayMetricsmetrics=newDisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
intmDensity=metrics.densityDpi;
if(mDensity==120){
settings.setDefaultZoom(ZoomDensity.CLOSE);
}elseif(mDensity==160){
settings.setDefaultZoom(ZoomDensity.MEDIUM);
}elseif(mDensity==240){
settings.setDefaultZoom(ZoomDensity.FAR);
}
Android中的webview其实是一个浏览器,对js进行解析以便于在智能机上面很好的显示。