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 は決して変更されません。
誰でもこれについて洞察を提供できますか?また、問題を解決するにはどうすればよいですか? ご検討いただきありがとうございます。