我使用下面的代码从
WebView
中截取屏幕截图。在Android 6及以下版本中表现良好,但在Android 7中只能截取可见部分。// before setContentView
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
WebView.enableSlowWholeDocumentDraw();
}
...
// before set webview url
webView.setDrawingCacheEnabled(true);
// after html load complete
final Bitmap b = Bitmap.createBitmap(webView.getMeasuredWidth(),
webView.getContentHeight(), Bitmap.Config.ARGB_8888);
Canvas bitmapHolder = new Canvas(b);
webView.draw(bitmapHolder);
但是位图b不完整。在Android Nougat中,我如何拍摄整个WebView
的屏幕截图?
编辑:
我发现webView.getContentHeight
无法正常工作。我硬编码了整个webview
的高度,并且它可以很好地工作。所以问题是:我如何在Android Nougat中获取整个WebView
内容的高度?
computeVerticalScrollRange()
has protected access inandroid.webkit.WebView
- Mneckoee