以下に示すように、写真のようにwebviewの画像を修正したいだけです。私はそれを達成するために何かをしました.HTC One、Samsung 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();
}
});
私の質問は、なぜ小さな画面のデバイスでは機能しないのか、どうすればその問題を解決できるのかということです。