为什么可以't我在Android WebView onLayout中设置了最大宽度

Why can't I set maxwidth in Android WebView onLayout?

本文关键字:设置 onLayout WebView Android 我在 为什么      更新时间:2023-09-26

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

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

它不起作用,因为我使用了maxwidth,而不是maxwidth。

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

 img { max-width: 100%; }

发件人http://davidwalsh.name/image-max-width