我有一个以编程方式创建的android webview。
LinearLayout layout = new LinearLayout(this);
webView = new WebView(this);
webView.setWebChromeClient(new WebChromeClient() {....}
final DisplayMetrics dm = getResources().getDisplayMetrics();
int screenWidth = Math.max(dm.widthPixels, dm.heightPixels);
int screenHeight = Math.min(dm.widthPixels, dm.heightPixels);
Log.e("TAG","Width "+screenWidth+" Height "+screenHeight);
layout.setLayoutParams(new LayoutParams(screenWidth,screenHeight));
webView.setLayoutParams(new LayoutParams(screenWidth,screenHeight));
layout.addView(webView);
我用CSS设置了背景图像:
body
{
margin: auto;
padding: 0px;
background-repeat: no-repeat;
background-position: center;
background-attachment:fixed;
background-image: url('image_480.png');}
我想让webwiew保持背景图像不变,没有任何缩放。如果设备的分辨率小于背景图像分辨率,则背景的其余部分将填充其他颜色。
使用分辨率低于屏幕分辨率的图像时,图像不会缩放,但如果我使用与屏幕分辨率完全相同的图像,则会以某种方式拉伸图像。知道为什么会这样吗?
此外,即使我设置了网页视图的高度和宽度,如果我在JavaScript中打印尺寸:
alert($(window).width());
alert($(window).height());
它们与一套不同。