gpt4 book ai didi

android - 在某些设备的 webview 上将图像居中时,图像看起来很小

转载 作者:太空宇宙 更新时间:2023-11-03 13:26:34 26 4
gpt4 key购买 nike

我只是想在 webview 上修复图像,如下图所示。我做了一些事情来实现这一目标,它实际上适用于 HTC One、三星 S2-S3-S4 等新型手机。但对于像 Galaxy Ace 这样的小屏幕设备,它不起作用,而且它看起来非常小。例如,图片上的 android 图像看起来居中但非常小。

这是我做的

    webView = (WebView)findViewById(R.id.webView);
WebSettings settings = webView.getSettings();
settings.setUseWideViewPort(true);
settings.setLoadWithOverviewMode(true);
settings.setJavaScriptEnabled(true);
String data = "<body><center><img width=\""+width+"px\" height=\""+height+"px\" src=\"" + url + "\" /></center></body></html>";
webView.loadData(data, "text/html", null);

宽高计算

//linearWebview is the parent of webview, I calculated its width and height and set the image dimensions according to that values.
linearWebview.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
width = linearWebview.getWidth();
height = linearWebview.getHeight();
}
});

所以我的问题是为什么它在小屏幕设备上不起作用,我该如何解决这个问题?

enter image description here

最佳答案

这样试试

不要在 Pixel 中指定宽度固定,因为在 android 中有太多的屏幕尺寸和分辨率,使用这样的相对尺寸。

String data = "<body><center><img height=\"auto\" style=\"max-width:100\\%\"; src=\"" + url + "\" /></center></body></html>";
webView.loadData(data, "text/html", null);

在此我们指定了宽度 100% 和高度“auto”。这样它将保持纵横比并且图像不会被拉伸(stretch)。

关于android - 在某些设备的 webview 上将图像居中时,图像看起来很小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18855126/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com