0

大きな画像のサイズを画面サイズに制限するために、WebView の onLayout をオーバーライドしようとしています。オーバーライドされた WebView で、次のことを試しました。

@Override
    protected void onLayout(boolean changed, int l, int t, int r, int b) {
        super.onLayout(changed, l, t, r, b);
        Log.d("WEBVIEW-WIDTH",""+getWidth());
        post(new Runnable() {

            @Override
            public void run() {
                loadUrl("javascript:var imgs = document.getElementsByTagName('img');"+
                         "for (var i=0; i<imgs.length; i++) {imgs[i].style.maxwidth='"+getWidth()+"'};");
            }
        });

    }

回転すると、新しい幅が記録されますが、画像の幅は制限されません。

4

1 に答える 1

0

maxWidth ではなく maxwidth を使用したため、機能していませんでした。

幸いなことに、ズームや回転時に画像サイズを更新する、はるかに優れた表示方法があるようです。

 img { max-width: 100%; }

http://davidwalsh.name/image-max-widthから

于 2012-08-30T04:43:57.487 に答える