Android中 ScrollView嵌套WebView时,WebView有时会出现大面积空白
有时会出现WebView大面积空白的问题,即WebView的高度不确定。本人试着使用WebView.getContentHeight();方法获取高度,同时把页面缩放关闭,但是当只有单行数据的时候WebView.getContentHeight();获取到的高度为0。但是有时候实际上是能够正常显示的,而且不能正常显示的时候,在内容下方会出现很大面积的空白,本人试着横屏重新加载,会正常显示。
本人WebView 显示的数据的方式是加载Html字符串进行显示的方式:WebView.loadDataWithBaseURL()这个方法。
在有些网站上看过一些大神的做法:WebView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
WebView.setVerticalScrollBarEnabled(false);
WebView.setVerticalScrollbarOverlay(false);
WebView.setHorizontalScrollBarEnabled(false);
WebView.setHorizontalScrollbarOverlay(false);
这个做法好像在4.0的版本以下能够成功(目前本人还没看到问题),但是在4.0以上中就失效了。
有时会出现WebView大面积空白的问题,即WebView的高度不确定。本人试着使用WebView.getContentHeight();方法获取高度,同时把页面缩放关闭,但是当只有单行数据的时候WebView.getContentHeight();获取到的高度为0。但是有时候实际上是能够正常显示的,而且不能正常显示的时候,在内容下方会出现很大面积的空白,本人试着横屏重新加载,会正常显示。
本人WebView 显示的数据的方式是加载Html字符串进行显示的方式:WebView.loadDataWithBaseURL()这个方法。
在有些网站上看过一些大神的做法:WebView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
WebView.setVerticalScrollBarEnabled(false);
WebView.setVerticalScrollbarOverlay(false);
WebView.setHorizontalScrollBarEnabled(false);
WebView.setHorizontalScrollbarOverlay(false);
这个做法好像在4.0的版本以下能够成功(目前本人还没看到问题),但是在4.0以上中就失效了。
解决方案