㈠ 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進行解析以便於在智能機上面很好的顯示。