Android--将背景WebView显示为位图
我想在后台加载webview,并且只显示它加载的页面的位图。我的视图层次结构中有一个可见性设置为“不可见”的webview和一个希望显示webview位图的imageviewAndroid--将背景WebView显示为位图,android,webview,imageview,Android,Webview,Imageview,我想在后台加载webview,并且只显示它加载的页面的位图。我的视图层次结构中有一个可见性设置为“不可见”的webview和一个希望显示webview位图的imageview imageView = (ImageView)findViewById(R.id.imageview); webView = (WebView)findViewById(R.id.webview); webView.setBackgroundColor(Color.parseColor("#006330")); webV
imageView = (ImageView)findViewById(R.id.imageview);
webView = (WebView)findViewById(R.id.webview);
webView.setBackgroundColor(Color.parseColor("#006330"));
webView.setDrawingCacheEnabled(true);
webView.loadDataWithBaseURL(SiteAPI.URL, html, "text/html", "iso-8859-1", null);
webView.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED),
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
webView.layout(0, 0, webView.getMeasuredWidth(), webView.getMeasuredHeight());
Bitmap b = webView.getDrawingCache();
webView.setDrawingCacheEnabled(false);
if(b != null) {
Toast.makeText(getBaseContext(), "Not null", Toast.LENGTH_LONG).show();
imageView.setImageBitmap(Bitmap.createBitmap(b));
}
else {
Toast.makeText(getBaseContext(), "Null.", Toast.LENGTH_LONG).show();
}
对getDrawingCache()的调用每次都返回null。我尝试过setContentView(webView),页面显示良好。我已确保isDrawingCacheEnabled()返回true,但位图仍然为null。我哪里出错了?您有两个选择: