0

我试图在名为 webDescription 的 WebView 中显示 HTML 字符串。因为这个 HTML 有时可能很长,所以我想将 WebView 的高度限制为最大尺寸,并允许内容在视图中滚动。

我正在使用以下代码等到页面完成加载,检查内容高度并将封闭(父)TableRow 的高度设置为最大值 150。

    webDescription.setWebViewClient(new WebViewClient() {

        public void onPageFinished(WebView view, String url) {
            // do your stuff here
            Log.i("EVENTDETAIL", "Web view has finished loading");
            Log.i("EVENTDETAIL", "Description content height: " + view.getContentHeight());
            if ( view.getContentHeight() > 150 ) {
                LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, 150);
                view.setLayoutParams(params);
            }
        }

    });

但是, view.getContentHeight() 总是返回 0;因此,父 TableRow 的 LayoutParams 永远不会改变。

谁能提供对此的任何见解以及如何解决我的问题?非常感谢您的考虑。

4

2 回答 2

0

使用此代码:

 if(view.getHeight()>150) 
 {
      LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, 150);
      view.setLayoutParams(params);
 }

我的意思是使用getHeight()而不是getContentHeight()

于 2013-01-17T00:27:19.550 回答
0

我会将 WebView 设置为 match_parent 并在 TableRow 上设置一个 maxHeight。

于 2013-01-17T00:41:20.710 回答