I have a webview control in a scrollview. when i load a long html document into it, it resizes to accommodate it. this is correct. however, when i use the same control again afterwards and put less space-consuming html into it, the content size doesn't shrink. this is a problem because the user is able to still scroll a short document into white space. any ideas on how to resolve this?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
I had a similar problem and resolved it by clearing the view and re-measuring with a small size prior to loading the view again.
e.g.
webView.clearView();
webView.measure(10, 10);
回答2:
This didn't work for me when using:
loadDataWithBaseURL(String baseUrl, String data, String mimeType, String encoding, String historyUrl)
But calling requestLayout() on the webview after loading the data worked except for a strange glitch with the scrollbar flickering if changing the view while scrolling.
webView.clearView();
webView.loadDataWithBaseURL(null, data, "text/html", "utf-8", null);
webView.requestLayout();