为什么我不能在Android WebView onLayout中设置maxwidth?

时间:2012-08-21 05:44:34

标签: java javascript android android-layout android-webview

我正在尝试覆盖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()+"'};");
            }
        });

    }

旋转时,它会记录新的宽度,但不会限制图像的宽度。

1 个答案:

答案 0 :(得分:0)

它没有用,因为我使用的是maxwidth,而不是maxWidth。

幸运的是,看起来有一种更好的方式来显示它,它在缩放和旋转时更新图像大小:

 img { max-width: 100%; }

来自http://davidwalsh.name/image-max-width