我正在尝试使用 WebView 显示带有内置多点触控的大图像,并试图避免内存崩溃。
我这样设置 webView:
setInitialScale(20);
WebSettings settings = getSettings();
settings.setJavaScriptEnabled(true);
settings.setUseWideViewPort(true);
settings.setLoadWithOverviewMode(true);
settings.setSupportZoom(true);
settings.setBuiltInZoomControls(true);
然后加载以下代码:
<head>
<meta
name="viewport"
content="width=device-width, user-scalable=yes"
/>
</head>
<body
style="margin: 0; padding: 0">
<img
alt="image"
src="THE_SRC_GOES_HERE"
id="theImage"
>
</body>
问题是,如果它加载一张中等大小的图片(例如 1600x1200),效果很好,而且图片适合屏幕宽度。
但如果在我的示例中图像更大,为 7300x5200,则它看起来像是放大了并且禁用了缩小。
如果你想测试图片 url 是:
注意:我不是该图片的所有者,我仅将其用于测试
最佳答案
我认为默认情况下您的图像最终仍会大于视口(viewport)。试试这个
<html>
<head>
<meta
name="viewport"
content="width=device-width, user-scalable=yes"
/>
</head>
<body
style="margin: 0; padding: 0">
<img
alt="image"
src="http://www.deviantart.com/download/165022929/Wallpaper_2010_by_scrumen.png"
id="theImage"
style="width:100%"
>
</body>
</html>
关于java - 视口(viewport)适合屏幕宽度和大图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10543880/